Fix notifications' handling

- UIApplicationDidEnterBackground/ForegroundNotification are redundant when using UIApplicationDidBecomeActive/ResignActiveNotification

- `removeObserver:` with `self` doesn't work when using `addObserverForName:object:queue:usingBlock:` which returns `An opaque object to act as the observer`. As a result the observer was never removed causing a crash when the RBVolumeButtons object is deallocated and a new notification occurs.