fixes #5960 - also look at task states to determine completion

sometimes finish_time is not actually set
fixes #5951 - adds environment hint to content host registration, BZ1085252

fixes #5951 - adds environment hint to content host registration, BZ1085252
Fixes #5947/BZ1028098 - allow selecting empty GPG key and sync plan.
Fixes #5956/BZ1083314 - add puppet module count to content view versions.
Fixes #5975 - Fix for a Content Host  UI reload issue

Previously when you went to content hosts page
and selected packages or errata links for a content host
you'd get multiple reloads. I was caused by a trailing slash.
Even though we have code to address / the modules javascript
tried to reload with a / version. This commit fixes that issue
Merge pull request #4170 from waldenraines/5956

Fixes #5956/BZ1083314 - add puppet module count to content view versions.
Merge pull request #4172 from parthaa/slash-fix

Fixes #5975 - Fix for a Content Host  UI reload issue
Merge pull request #4160 from waldenraines/5947

Fixes #5947/BZ1028098 - allow selecting empty GPG key and sync plan.
Fixes #5978 - Included content host in Host::Managed

Host::Managed extends Host::Base, but for some reason
probably due to server caching the change to Host::Base
is not geting reflected in the sub class causing the dreaded
Operation FAILED: undefined method `association_class' for nil:NilClass

irb(main):015:0> Host::Base.reflections.keys.grep /content_host/
=> [:content_host]
irb(main):016:0> Host.reflections.keys.grep /content_host/
=> []
irb(main):017:0> Host::Managed.reflections.keys.grep /content_host/
=> []
Even something like a reset_column_information didnt do the trick.
This happens only in production, could not reproduce in my Dev
Environment.

This commit fixes this by forcing the inclusion of
HostBaseExtensions in both subclass and super class.
Merge pull request #4174 from parthaa/host-reload-hack

Fixes #5978 - Included content host in Host::Managed
Fixes #5982: Ellipsis content search package descriptions to prevent overflow, BZ1012606.
Merge pull request #4159 from cfouant/cfouant-branch-0527

fixes #5951 - adds environment hint to content host registration, BZ1085252
fixes #5402 - adding feature to remove packages from library repos
Merge pull request #4176 from ehelms/fixes-5982

Fixes #5982: Ellipsis content search package descriptions to prevent overflow, BZ1012606.
Merge pull request #4161 from jlsherrill/states

fixes #5960 - also look at task states to determine completion
Merge pull request #3998 from jlsherrill/pkg_delete

fixes #5402 - adding feature to remove packages from library repos
Fixes #5802 - HC update/create using system uuids

Alter Host Collection api update/create actions to accept system uuids.
This is a fix related to hammer-cli-katello commands where some of
the commands take uuids and others take the data base id. This allows
the cli commands to uniformly take uuids.

* also added class_name to relation for system in SystemHostCollection