Fix formatting

Do preliminary combat with code base.
- Add missing newlines at end of file
- Replace tabs with spaces to be consistant
- Add spaces where idiomatic
Reorder commands; require authentication

The commands were out of order in IRC.java leading to things like
having two sections that handled FJOIN! Additionally fix some formatting
here mostly "}else{" to "} else {".

Require that the other side authenticates before we let them send
commands other than CAPAB and SERVER. Previously we could skip
authentication entirely and still go on out merry way chatting.
Ensure UID is not in use after incrementUid

How else are we to support over 2 billion users?!?
Cleanup CAPAB CAPABILITIES code

- Don't recompute prefixModes every time we giveChannelModes
- Add comments to explain what all the split()s do
- Use ex which has already split on " " for us
- Start using variable names that are longer than a letter
  (I talked to the letter department; we got a discount on decent
  variable names!)
Correctly handle ERRORs

Actually close the socket and reconnect when we recieve and ERROR
instead of going on our merry way pretending nothing ever happened.
Rename mainUid to botUID and use SID

- Instead of sticking config.getString("server.id") everywhere use SID
- Use botUID which is more descriptive than mainUid
- Start currentUid at AAAAAB so we don't have to incrementUid first
  thing we do when we BURST
Correctly authenticate with remote server

- Don't send SERVER right after the remote CAPAB STARTs
- Only mark authenticated as true after the remote side presents the
  correct password. Recent developents in security have indicated the
  remote side should authenticate itself before we trust it.
- Reset authenticated to false on start so we don't assume the other
  side is authenticated when we reconnect.
Properly parse commands

- If the first character of the message is a colon, then a prefix is
  present and store it in sender.
- Replace the ex array with args which does not have the command
  changing places dependent on if a prefix is present.
- Alias args[0] to command.
- If a parameter starts with a colon, properly handle it by
  concatenating it with the remaining parameters and removing the colon.
Use else if where appropriate
Fake being a server better

- We are the connecting server. Act like it.
  - Send CAPAB first.
  - Send SERVER first, but
  - Don't BURST until the remote authenticates
  - BURST all at once; stopping for the other server to finish first is
    weird
- ERROR may happen during authentication
- CAPAB may happen after authentication iff it is proceded with CAPAB
  START
Remove staff channel
Remove server specific channels

If this feature ever comes back, then all servers will have their own
channel and they can "happen" to all point to the same place. This way
there is only one code path and the possibility for bugs is lessened.
Remove topic code

If you want a set topic, use real services packages.
Remove useless bot

The bot no longer does anything so remove its waste of a UID.
Remove irckick command

This may come back later; but since all the people who should have the
ability to kick have real IRC clients, there's no need for this.
Remove mode command

This also may come back, but again just use a real IRC client.
Remove giveChannelModes

Minecraft players should just be talking not oping up. If you want
services, use a real services package not a hack of a server.

Also removing the warning on startup since it no longer applies.
Remove Channel class

Since we only support one channel, there is not need to have a whole
class or a hashmap dedicated to supporting multiple channels.
Add sendAll function

Since sending to all players in IRC.channel is such a common idiom, make
a function out of it
Add sendError function