Fixes #6078, #6300, BZ1105175, BZ1097054: fix invalid limit fields.

This commit changes the way we handle limited fields such as Content Host
number of systems and Activation Key usage limit.  Instead of representing
"unlimited" as -1 we now represent it as a boolean on the object.

http://projects.theforeman.org/issues/6078
http://projects.theforeman.org/issues/6300
https://bugzilla.redhat.com/show_bug.cgi?id=1105175
https://bugzilla.redhat.com/show_bug.cgi?id=1097054

Goes with https://github.com/Katello/hammer-cli-katello/pull/199
Need to update the api docs for the create and update actions.   They currently refer to:
param :usage_limit, :number, :desc => N_("maximum number of registered content hosts, or 'unlimited'")