Create 2nd version of QLowEnergyController and add related unit test

The Bluez implementation is the only working implementation for BTLE.
However the current approach of using gatttool via QProcess is not
viable going forward. The tool output is not standardized, the Bluez
developers don't recommend it for anything but debugging and some
Linux distros don't even ship it. Since Bluez does not have any high
level API for BTLE GATT we have to use L2CP sockets to communicate
with the GATT server of the peer device.

The current QLowEnergyController API needs a lot of API changes
going forward as some elements cause problems in the long term.

In summary we need a new internal implementation and a new API for
QLowEnergyController. It is far too much effort to change both elements
at the same time. Hence QLowEnergyControllerNew was added with first
simple API elements. Ultimately it should replace the existing class.
For now the old API stays as is for reference purposes. All other
BTLE classes work just fine for now.

Last but not least a unit test was added. The test assumes the existence
of the TI Sensor tag and verifies all its known characteristics
and descriptors. Ultimately it will help to verify the proper
detection of all details. Right now the test detects all services
and characteristics but not all descriptors.

Change-Id: I6ff1a16da1604be57f5564ae99919ffe7187d02e
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Connect to BTLE device

Change-Id: Iaae61b6a872124d17855d80d106f2b10996501de
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Discover all Bluetooth services and their handles

Change-Id: I83d88412319c34cf6c8cf0c6e841458226c9d073
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Don't construct QBluetoothUuid via string parsing

This improves conversion performance.

Change-Id: Ib78b2a6e24d0f44723be0bfb63b6aafc965188a6
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Provide guarding against non-BTLE enabled versions of Bluez

This disables the gatttool based controller as well. While it might
compile on older systems they are likely to not have a
gatttool and why would a Bluez version without BTLE symbols ever
work anyway.

Change-Id: I761e482d3dd1e99008c5d170053e19a1a3a51e6c
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>