monitor: Fix crash when parsing SDP

get_tid() may return NULL if bogus tid is passed.
This fix following crash:

Invalid write of size 1
   at 0x4A0A643: memcpy@@GLIBC_2.14 (in /usr/lib64/valgrind/
     vgpreload_memcheck-amd64-linux.so)
   by 0x4218E4: search_attr_req (sdp.c:413)
   by 0x42214D: sdp_packet (sdp.c:748)
   by 0x41ED09: l2cap_frame (l2cap.c:2632)
   by 0x414D51: packet_hci_acldata (packet.c:7713)
   by 0x415133: packet_monitor (packet.c:3332)
   by 0x404AEC: control_reader (control.c:911)
   by 0x40231A: main (main.c:197)
 Address 0x6 is not stack'd, malloc'd or (recently) free'd

Process terminating with default action of signal 11 (SIGSEGV)
 Access not within mapped region at address 0x6
   at 0x4A0A643: memcpy@@GLIBC_2.14 (in /usr/lib64/valgrind/
     vgpreload_memcheck-amd64-linux.so)
   by 0x4218E4: search_attr_req (sdp.c:413)
   by 0x42214D: sdp_packet (sdp.c:748)
   by 0x41ED09: l2cap_frame (l2cap.c:2632)
   by 0x414D51: packet_hci_acldata (packet.c:7713)
   by 0x415133: packet_monitor (packet.c:3332)
   by 0x404AEC: control_reader (control.c:911)
   by 0x40231A: main (main.c:197)
tools/btmgmt: Add scan-params command
tools/btmgmt: Rename set-io-cap to io-cap

Every other 'set-something' command is just called 'something', so
let's keep this consistent.
tools/btmgmt: Fix io-cap usage message
tools/btmgmt: Trival whitespace fix
shared: Add ECC library

This patch adds ECC functions. The code has been taken from
https://github.com/kmackay/easy-ecc and modified to conform with the
BlueZ coding style.
unit: Add unit test for ECC

This patch adds unit tests for the ECC code. Also this test code has
been taken from https://github.com/kmackay/easy-ecc.
monitor: Add LE SC defines for SMP
monitor: Add translations of LE SC error codes
monitor: Add decoding of LE SC PDUs
monitor: Decode LE SC bits in SMP authentication requirement
monitor: Decode LinkKey bit in SMP key distribution field
monitor: Print full type information for LTKs
smp-tester: Use BR/EDR/LE controller instead of LE-only

With secure connections we'll be able to do cross-transport key
generation as well as SMP signaling over BR/EDR, so we'll need a
dual-mode controller for this.
tools/mgmt-tester: Update LE supported settings to include SC
smp-tester: Add test case parameter for SC
smp-tester: Add another basic SC test
smp-tester: Allow multiple sending without expecting data

Sometimes we need to send multiple PDUs without waiting for any specific
PDU in between.
shared/crypto: Add bt_crypto_f4 for LE SC
smp-tester: Add basic public key handling