QLowEnergyController - bug fixes (OS X, iOS)

Several problems found by qlowenergycontroller auto test:

- Core Bluetooth in its didWriteCharacteristicValue callback
  does not have this new updated value, but the old one,
  to avoid additional characteristic read I have to cache this
  value in writeCharacteristic and report it later from the callback
  as it's already done for client characteristic configuration.
- writeDescriptor with state != ServiceDiscovered (can happen after disconnectFromDevice)
  should set an error.
- setNotifyValue did not check that value has the wrong length ( > 2 bytes) -
  this also should be an error.
- Fix a key mismatch - in setNotifyValue remember descrptor's handle, not
  the characteristic's handle.
- Remove annoying qCWarnings from didUpdateNotifyValue - it happens
  very often that we set this value in 'automatic' mode, without 'writeDescriptor'
  request.

Change-Id: If3955f0e1364587b96403d23f2f8da28e6723e87
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>