shared/gatt-db: Fix bug in maximum handle check.

0xffff is a valid handle and many devices return it as the end group
of their last service. This patch fixes a bug that prevents adding or
inserting such a service into the database.
shared/gatt-db: Add helper to get service handles.

This patch adds gatt_db_service_get_handles which is an internal helper
to obtain service handles from a gatt_db_service directly.
android/gatt: Unify read by type and read by group type

These two functions were veary similar but inconsisten in used error
codes and freeing allocated data.
android/gatt: Improve prepare write request response

According to spec we should response with value provided in the
request. Helper function was not very helpfull in prepare write
request. It was forcing another buffer copy and was overwriting
reponse values with their own values, thus was removed.
android/gatt: Fix improper signed write request decoding buffer size

We shouldn't assume minimum le mtu for incomming message. For BR/EDR
the minimum mtu is larger than for LE transport layer. Its safer to use
whole message size like we do in other cases.
gattrib: Fix not setting att's mtu size in g_attrib_new()

We were setting only the buffer in gattrib but att was left with the
default value of 23 (LE transport layer defaults). For BREDR transport
layer this may result in using smaller MTU than the minimum allowed
(48).

This was affecting cases when MTU Exchange was not supported by the
remote device and defaults were used.
android/hal-avrcp-ctrl: Fill register module command with max clients

Register module command must have declared max clients value before
registering module. Initial value is set to 1.

==2175== Syscall param sendmsg(msg.msg_iov[1]) points to uninitialised byte(s)
==2175==    at 0x534AD5D: ??? (in /usr/lib64/libpthread-2.18.so)
==2175==    by 0x6B47F8C: hal_ipc_cmd (hal-ipc.c:369)
==2175==    by 0x6B42D42: init (hal-avrcp-ctrl.c:85)
==2175==    by 0x404ACF: init_p (if-rc-ctrl.c:56)
==2175==    by 0x401975: main (haltest.c:428)
==2175==  Address 0xffefffcd2 is on thread 1's stack
android/doc: Update cts results for Android 5

Google decided to disable BLE tests in CTS due to some quality issues.
Our tests shows that pure AOSP on Nexus devices was not passing.
We need to rerun BLE section when it becomes available again.
android/pts: PTS tests for DIS on Android 5.0
android/pts: PTS tests for HID on Android 5.0
android/pts: PTS tests for MPS on Android 5.0
android/pts: L2CAP pts tests results on Android 5.0
android/pts: PTS test for PAN on Android 5.0 and PTS 5.3
pbap: Fix When MaxListCount header missing

As per spec(5.3.4.4) when MaxListCount headser is missing then
PSE should assume MaxListCount value as MAX (65535)
android/handsfree-client: Add SCO to handsfree client
android/handsfree-client: Add handle incoming SCO connection
android/handsfree-client: Implement audio connect/disconnect
android/handsfree-client: Send AT+BCC to start codec negotiation

With this patch we start codec negotation on audio connect if both sides
does support it.

This patch also moves codec_negotiation_supported functions up in the
file
android/README: Update status of HAL HFP HF implementation
obexd/client: Add support for reading version

This adds support for reading profile version via
SDP_ATTR_PFILE_DESC_LIST