Add guest_limit attribute to compliance

guest_limit is a new global attribute type, its compliance may depend
upon any or all other subscriptions on the system.
The highest attached guest_limit (or -1, which is unlimited)
is applied to every subscription with a guest_limit.

Added a "guest_limit" candlepin capability
Rules uses listByConsumerAndDate to get consumer entitlements

This will require slightly less json serialization.  We could
theoretically remove the check from inside of compliance,
but I like that one as well to block problems from cp
version differences.

Fixes a problem that would have come up with the new global
attribute, I was checking all of them, not only the ones with
a valid date in ComplianceRules.isEntitlementCompliant
ComplianceRules.isEntitlementCompliant now requires date

Because entitlement compliance can depend on any other
entitlement (guets_limit) we must pass all entitlements
on a given date into the rules.
Added pseudo resource 'guest_limit'

This will be necessary to check from virt-who
in order to avoid breaking old candlepin servers
replace GuestId.active with attributes
Updated liquibase script for this change

More correct/informative name
filter attributes from guests in array
Shorten primary key constraint name
Replaced tabs with spaces in guest attribute liquibase script
Added comments to new functions in rules.js

Also removed a pseudo resource for the new guestid work
I've got a better resource that should be ready to merge
Merge pull request #442 from candlepin/ckozak/guest_limit

Ckozak/guest limit