The Subscription class encapsulates a single subscription with
the following responsibilities:
Providing access to the subscription info,
Recording events this subscription is interested in,
Providing access to the events.
SubscriptionManager collects all subscriptions requested, handles
the subscription timeout and provides METHODS to discover subscriptions
present on a given resource as well as events for an specific subscription.