Kickr connection fail gracefully

.. the code assumes the kickr connection will always work, even
when no BTLE hardware is present.

If no BTLE hardware is available then connections fail immediately
and so do attempts to find devices.

If BTLE hardware is available but the kickr connection cannot be
established in 30 seconds in train view then it returns an error.

Also added better device descriptions to check the device subtype
so we can identify stages, inride and kickr separately.