Fix weapon changes going out of sync

* Add SetWeapon to space ship interface
* Make network code transfer type of weapon changed to
* Refactor method names
* Fix previousAbility called when remote player scrolled to previous
  weapon @andnktal

Fixes #30