[bluetooth] refactoring code

* Add CAPI() and CAPI_SYNC() macros :
In order to handle Tizen CAPI in a generic way. If CAPI call returns
an error, a JSON post message is directly sent back to JS.
If CAPI call returns no error, reply id is stored in order to be
reused to finalize the JS async call.

* All reply ids are stored in reply_id_map_ associated with the
JSON message cmd.

* Add specific methods to send JSON messages to JS:
  - PostAsyncReply() method is used for JS async calls.
  - SendCmdToJs() method is used to independently update JS state.
    For instance it allows to update Bluetooth web API state
    when BlueZ is attacked externally to Tizen CAPI.

* Remove several useless variables/methods.

Also fix XWALK-2832 and XWALK-1334
`const std::string& cmd`