Move MTurret class definition to dedicated header file

MTurret and GatlingTurret have been exposed to all sources that include
just ArmBase, but that's not desirable.
Update MTurret model drawing method

The old method required precompiled .bin files which are obsolete.
The model is demonstrated in demo2.nut with Assault as the platform.
Prevent errors on referencing MTurret from a script

The same treatment as df49b25
Add getStatic() method to Entity like CoordSys branch

Now we do not need to define classname() for all Entity descendants.
vastspace: Prevent errors on referencing TorusStationEntity from a script

TorusStationEntity is always created with TorusStation (Astrobj descendant)
which means creating TorusStationEntity alone is prohibited.
Previously, this has been realized by not defining
EntityRegister<TorusStationEntity>, but this led to errors when accessing
the Entity instance from a Squirrel script.  Now we define the register
variable, but disable creation of Entity by instantiating template function.
vastspace: Move modPath() inclusion to vastspace.h from some classes

The modification path is better defined in a dedicated header file.
surface: Prevent Apache runtime error in space by erasing a height calculation