PacketListener annotations, enums, refactors

- Packet listening now handled with the new PacketListener annotation
- Packet mode replaced with ConnectionType enum; correct direction
enforced
- New property value enums to replace various int constants
- Construction of ArtemisPacket subclasses delegated to ObjectType enum
(gets rid of one of the giant case statements in PacketParser)
- PlayerUpdatePacket subclasses experimentally changed to run in a loop
for multiple ships (may be changed back)
- EnemyUpdatePacket renamed to NpcUpdatePacket, ArtemisEnemy renamed to
ArtemisNpc
- OtherShipUpdatePacket and ArtemisOtherShip removed
- WhaleUpdatePacket and DroneUpdatePacket classes created;
GenericUpdatePacket no longer handles those types
- CommsOutgoingPacket delegates CommsTargetType detection (formerly
"mode") to that enum
- Some test classes removed in preparation for a new test suite