fixes #2324 Refactoring of Host STI

Allows plugins to render a different STI-type edit form and save
the changed type. Also allows the /fact_values upload to specify
a type. Adds tests for the STI type changes.