Update and implement Provider actions for API v2

All v1 code has been brought over to the v2 api.
The show route shows all providers, so it is up to the caller to
actually filter the results.

Modifications and additions include:

  - Merges initial work done in bkearney/provider-command
  - Alphabetizes and groups together routes
  - Modifies import_manifest action to handle uploading zip files
  - Fixes where Product not responding to last_sync breaks Provider
  - Adds tests for CRUD actions
  - Adds a provider_params method to ProviderController
  - Adds the api_resources, and exposes child nodes for products and
    repositories
  - Updates routes for providers controller
  - Adds top-level provider routes for CRUD in addition to index
  - Moves member routes and alphabetize them
  - Changes respond_for_index to respond

This change also removes resource description block, since This
functionality is now in the base class: Api::V2::ApiController

Routes and actions related to Products were left in, since work
in those areas of the code is being completed in another branch.

Changes based on feed in PR #3533 include:

- Remove trailing whitespace and extra line breaks
- Make rubocop happy
- Replace string literals with constants for provider_type
- Update description for index api
- Fix whitespace
- Make parameter order consistent
- Update organizations routes for providers to just index
- Put query logic in products action on one line
- Change @provider to @resource per convention
- Add param rules for ProvidersController
- Convert array literal in provider test setup to %w
Merge branch 'master' into provider-command

Conflicts:
	app/controllers/katello/api/v2/providers_controller.rb
	app/views/katello/api/v2/providers/show.json.rabl
	config/routes/api/v2.rb
Engine: UI: Initial code for Lifecycle Environment Paths page
Engine: Lifecycle Environment Paths: add to the Content navigation/menu

This is to make the new Lifecyle Environment Paths page available
from Content->Lifecycle Environment Paths.  This will not be needed
once we move to a single nav.
api v2 systems - fixing some missing param_rules
Merge pull request #3545 from komidore64/fix-system-422s

api v2 systems - fixing some missing param_rules
api v2 - forgot to move ping_controller routes into alphabetized section
Update controller params to make UI work with API

This adds params needed to list and create providers now
in the UI as well as cleans up some controller actions.

Fixes #3494
Bastion - System Groups details page fix

Fixed a minor issue in the system groups details page
where if you changed the name of the system group the
left panel holding the names of the system groups wouldnt get
updated. This should now work.
Merge pull request #3533 from mkelley33/provider-command

Update and implement Provider actions for API v2
Fixing broken javascript test on master
Merge pull request #3549 from daviddavis/temp/20140107190403

Fixing broken javascript test on master
Engine: UI: Lifecycle Environments: updates as part of PR review

Updates based on PR feedback as well as other random cleanup.
Engine: UI: Lifecycle Environments: adding tests
Engine: test: regenerate vcr_cassettes

After adding several tests for environments, needed to regenerate
cassettes.
Merge pull request #3525 from bbuckingham/engine-environments

Engine: UI: Lifecycle Environment Paths UI
Merge pull request #3531 from jlsherrill/selectallerrata3

Migrating remaining bulk actions to new select all
Engine: Adding basic Foreman plugin definition.

This adds the Foreman plugin definition to define a single
navigation menu setup when Katello is installed. Overlapping entities
are scoped by naming and an entire Content menu is added for the
unique entities Katello brings.
Engine Plugin: Cleaning up unused code that results from no longer
supporting our own top level menu.
Merge pull request #3548 from parthaa/system-groups-rename-issue

Bastion - System Groups details page fix