Client now stores it's subscriptions
* `on_subscribe` callback signature has changed, argument properties has beed added: `on_subscribe(client, mid, qos, properties)`
* `client.subscriptions` - list of subscriptions
* `client.get_subscriptions_by_mid(mid)` - get list of subscriptions with certain message identifier. May be useful in `on_subscribe` callback in order to handle (un-)successful subscription. Note that after `on_subscribe` is finished, mid is freed and can be used in other messages, so it's also removed from subscriptions.
* `client.get_subscription_by_identifier(subscription_identifier)` - get list of subscriptions with certain subscription identifier. May be useful in `on_message` callback.