Changed desktop notifications to support Firefox.

Pretty much everything of the notification handling was redone.
This is tested on Chromium version '32.0.1700.107 (248368)' and
Firefox version 29 and 27 under linux. More testing would be nice.
Adds confirmation dialog and help text to server and channel close.

In order to improve the UX this commit adds a confirmation dialog when
closing the connection to the server. It also adds a 'title'-tag over
the close-icon (an 'x') informing the user that pressing this button
will result in either leaving network or channel.
Fixes bug where one could register with empty username or password.

After commit 48bf2d64d4db it became possible to register with an empty username
and/or password. In fact, the checks ensuring a value in the username and
password fields were referencing legacy classes and no longer working. I thus
changed to a horizontal form per Twitter Bootstrap documentation[0] and added
some validation states informing the user of what is wrong.

[0]: http://getbootstrap.com/2.3.2/base-css.html#forms
Gives user notification when a username is already registered.

The server actually sent an event called 'register_error', but there were
nothing client-side that listened for it. This commit mitigates this.
It also clears up any old messages, so that they don't stack up, but rather
flashes when entering multiple bad passwords or already registered usernames.
Adds some common command shortcuts

This commit introduces aliases found, among other clients, in irssi:

    /j -> /join
    /t -> /topic
    /q -> /query
Merge pull request #297 from hermansc/register-form-alerts

Gives user notification when a username is already registered.
Merge pull request #298 from hermansc/irssi-aliases

Adds some common command shortcuts
Merge pull request #295 from hermansc/login-form-fix

Fixes bug where one could register with empty username or password.
Merge pull request #293 from hermansc/close-confirmation-dialog

Adds confirmation dialog and help text to server and channel close.
Merge pull request #291 from totokaka/desktop-notifications

Changed desktop notifications to support Firefox.
Adds button for joining a channel without writing /join

Fixes issue #123 and adds a button under the channel list for easily inputing a
channel name and pressing enter. This should make it more easy for new users to
IRC, joining channels. Someone with a better feel for UI may want to look at
how to make this prettier and even simpler.
Merge pull request #300 from hermansc/new-channel

Adds button for joining a channel without writing /join
Makes input box when joining a channel autofocus, not needing two clicks.
Simplifies logic for adding a channel. Changes having global state to using the DOM.