public function run()
    {
        $this->command('PASS', $this->connection->getPassword());
        $this->command('NICK', $this->connection->getNickname());

        $this->grantAll();

        $this->setLogIn();
        $this->dispatch('tweech.authenticated', new Event());

        $ticker = new Ticker($this);
        $ticker->run();

        $chatreader = new ChatReader($this);
        $chatreader->handleSockets();
        $chatreader->run();
    }