[Bluetooth] Implement health profile API and improve extension

- add Bluetooth Health Profile related API
- use BluetoothInstance::Initialize method
- call missing ondevicedisappeared callback
- improve server and client socket part
- fix many error code returns
- fix some readonly attributes to pass some TCT tests

BUG related to XWALK-1065
This is a legitimate question.
Actually comms team told me to test connection with this UUID so I include it in my test.
With this one, I was able to send messages over an rfcomm socket.

With previous UUID, BlueZ returns an error about its format...