Added proxy support (fixes #114). Thanks @Johni0702!

Proxies such as BungeeCord have the option to forward the real address,
UUID, and properties from the auth process to the backing server so that
they can appear to be in online mode even if they are not.
Fixed Player.isOnline() returning true when the player isn't already logged in