src/shared/gatt: Implement simple write functions.

This patch implements bt_gatt_write_without_response and
bt_gatt_write_characteristic_value functions.
tools/btgatt: Added write-characteristic command and security levels.

This patch adds the write-characteristic command for characteristic
value writes with/without response and the --security-level flag for
setting the connection security level.
src/shared/gatt: Reference count multi-pdu GATT procedures.

Some GATT operations require multiple ATT protocol requests and
responses in sequence. The code previously did not set the destroy
callback of bt_att_send_sequential, as the operation structures would be
destroyed in intermediate steps, and instead explicitly cleaned up the
memory at the end of the operation. This would cause memory leaks, if
the ATT requests got canceled at any stage.

This patch makes these operations structures reference counted, so that
an unref function is passed to bt_att_send_sequential as the destroy
callback. This way, on cancellation and intermediate requests, the
operation structure will be properly unref'd.
src/shared/att: Remove unnecessary malloc's in response handlers.

This patch fixes the response handlers so that variable length value
data is passed to the callback by simply assigning a pointer to the
relevant location to the internal buffer to the response structure,
instead of copying it to a new array before passing it.
src/shared/gatt: Implement bt_gatt_write_long_characteristic_values.
tools/btgatt: Add write-characteristic-long command.
src/shared/gatt: Report operation status and error code separately.

This patch changes the bt_gatt_* callback signatures to take in a status
and an att_ecode argument, as opposed to having a single status argument
that reflects error code and operation status. This is because
operations can fail outside of ATT protocol errors.
src/shared/gatt: Implement bt_gatt_register and bt_gatt_unregister.

This patch implements notification/indication callback registration for
bt_gatt.
tools/btgatt: Add event monitoring support.

This patch adds the --monitor flag to allow registering a callback for
notifications/indications.