Bug 942104 - Avoid exposing Bluetooth interface to all web pages, r=bz

Current Bluetooth related webidl implementation would make interfaces
such as BluetoothAdapter exposed to all web pages, and obviously we
don't want to see that.
Bug 942104 - Add an event listener "ondiscoverystatechanged", r=gyeh, r=mrbkap
Bug 942104 - Add event 'BluetoothDiscoveryStateChangedEvent', r=gyeh, r=bz
Bug 942104 - Fire event 'discoverystatechanged', r=gyeh
Bug 942104 - Notify BluetoothAdapter about discovery state changed (bluedroid), r=gyeh
Bug 942104 - Notify BluetoothAdapter about discovery state changed (bluez), r=gyeh
Bug 942104 - add BluetoothDiscoveryStateChangedEvent to test case test_all_synthetic_events, r=smaug