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
Should these migrations also update the existing data?

e.g. 
```
if usage_limit == -1
    usage_limit = nil
    unlimited = true
end   
```