[Review] Update reports API / models to not require puppet

Pushing this up for early review, there's still a bunch of model tests which need to migrate to https://github.com/GregSutcliffe/puppet-foreman/blob/reports/spec/functions/foreman_report_processor.rb but otherwise it seems to be code-complete. 

It does include 822 and 840, so it's usable as a feature branch for running without Puppet. Only review the last commit.

@domcleal could you take a look when you're done with 822?