No Activity leaking

Currently Activities are being leaked for as long they are kept in the queue, this PR aims to fix this issues by:

- Auto releasing it `onDestroy` for ICS+, older versions must call `cancelAll(Activity)` (preferred) or `cancelAll()` at earliest convenience.
- Using one `MsgManager` per `Activity`, this way `Activity` _A_ won't have to wait for `AppMsg`s belonging to `Activity` B to be removed in order to show _A_'s `AppMsg`s
- Also updates gradle files/vars