Improvement: The TestWeapon class now extends the new SubSystem class and the update method of the TestShip class has been generalised to use SubSystem objects.
This is an abstract class used to define subsystems of a game object.

Signed-off-by: noise256 <douglashoyalcuthill@gmail.com>