[WIP] STI foreman provider (STI)

This creates the models to be used for creating the foreman configuration provider.



This feels like it needs a lot more.
Did I miss anything?
/cc @gmcculloug @brandondunne 
Should ```create_table "operating_system_flavor_customization_scripts" do |t|``` be ```create_table :operating_system_flavor_customization_scripts, id: false do |t|```?