Don't call init() asynchronously

* It causes calculations based on position to be wrong
* This makes the ship run into its own bullets when flying forward and firing
Server updates

* Added matchJoined handshake to tell players when they can join a team
* Convert maps to JSON
* Added map.spawn positions
* Fix crash when no data is sent with fire or hit packet
* Add moon bases to invasion map
Client updates

* Add name to map item constructors
* Correctly set constructor property on classes
* Added matchJoined handshake
* Spawn player according to map spawn location for team
* Added temporary map editor, accessible by calling s.MapEditor() and s.getMap()
Map parity between client/server, ship hits and kills