Don't let Bungee run in dirs with ! in name.

Java uses ! to indicate a resource inside of a jar/zip/other container. Running Bungee from within a directory that has a ! will cause this to muck up.
Correct a typo in Spawn Object rewriting
Fix uniqueId returning null in LoginEvent
Handle objective value changes. Although the client *shouldn't* be using this for any sort of keying, it may indeed be. Closes #1116 awaiting testing.
Clarify PreLoginEvent
Make ComponentBuilder clonable
Duplicate any extra components when duplicated
Tidy up the handling of Spawn Object and fix a off by one error with it
Allow customisation of kicking during initial server connection. In particular allow removal of server name by modification of messages.properties.
Disable plugins in reverse order
Add ServerInfo method to send plugin message only if server is online
Add forward parameter to only forward to online servers [Adds #1120]
Change a few aspects from last PR
Add KickPlayer subchannel

Can be used to kick a player who is on a different server
Fix javadoc
Shuffle Jansi/Jline versions
Initial draft of forge/FML support. Some race conditions prevent this from working sometimes. Something with the time we send the handshakes
Forge 1.7 support. See issue #899.