Engine: include only needed sub-engine files

Prevents the error Gem::Package::TooLongFileName on bundle install
due to file paths being above the limit
Engine: Adding Rubocop code style checker for better Jenkins output.
Merge pull request #3435 from jlsherrill/engine_update

Engine: include only needed sub-engine files
Merge pull request #3449 from ehelms/engine-checkstyle

Engine: Adding Rubocop code style checker for better Jenkins output.
Engine: Fixing lint problems detected by rubocop
Merge pull request #3456 from daviddavis/temp/20131204071804

Engine: Fixing lint problems
Merge pull request #3453 from Katello/engine

PR: Request merge of engine branch to master
API v2 - specify API version via headers or in url
API v2 - switching two /blah/ regexs to %r{blah}
attempting to fix busted test:
Katello::Api::V1::UsersControllerTest.test_list_owners_username
changing :apiv to :api_version
API v2 - actually let's just extend foreman's constraints since they're
the same
fixing tests that check for api routes
Merge pull request #3461 from komidore64/versioned-urls2

API v2 - specify API version via headers or in urls
Add subscription totals portlet to the dashboard

This "portlet" (aka widget) on the dashboard implements user story
"As a dashboard user, I want to see current subscription totals" in
SAM backlog sprint 10.

This portlet adds the following functionality:

- It links to the subscriptions search page, where the results shown
  are filtered by date range using elasticsearch.
- The counts shown are calculated from new methods on the Pool class
  in the katello app's models.
- I add a helper method to the DashboardHelper that permits a portlet
  or widget to exclude the quantity dropdown from displaying in cases
  such as this where quantity doesn't make sense.
Merge pull request #3460 from mkelley33/subscriptions-widget

Add subscription totals portlet to the dashboard
DRY up use of redhat_provider with @provider instead