[WIP] STI foreman provider

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 
I had this, but the table and index names get so long that we have to override a bunch of them (so postgres doesn't blow up)
Also the basic code for finding one was way too verbose

If you can think of a shorter name, that would be great