Fixes #4398 Refactor ForemanHooks to be usable from a cookbook

This enables foreman reporting from inside a recipe.

Example:
```ruby
require 'chef_handler_foreman'

chef_handler "ChefHandlerForeman::ForemanReporting" do
  arguments [
    :url => "http://foreman.lan",
    :foreman_ssl_cert => "/path/to/ssl.crt",
    :foreman_ssl_key => "/path/to/ssl.key",
    :client_key => "/path/to/client.key"
  ]
  source "chef_handler_foreman/foreman_reporting"
  action :enable
end
```