rework faction-based NPC subtypes to be own-classes -- resolves issues
of not being able to use subtype in constructor due to it being a
class-field that was not initialized until after super.constructor was
called
update names in default skin pack for mounted_soldier->cavalry so that
they load properly
clean up faction-npc refs to subtype -- they now purely use base type,
subtype could probably be moved directly into player-owned