Since the structure of Bluetooth profile managers has been changed, we could remove those observer classes in each profile, i.e., BluetoothHfpManagerObserver, BluetoothOppManagerObserver, BluetoothA2dpManagerObserver.
As reported in bug 798035, Bluetooth*Managers used to inherit both nsISupports and RefCounted<>, so we need to separate the observer part from profile manager itself.
Now that the structure changes, we can just let BluetoothProfileManagerBase inherit nsIObserver and implement virtual function Observe() in each profile manager.