Fix compile without Bluetooth LE stack included

Commit 29f2e9c... ("Bluetooth: Implementation of LPP and extended LE
scan") breaks the compile on devices which don't include Bluetooth LE
support.  Fix the breakage by guarding new code which depends on the BLE
stack with #ifdefs.

Change-Id: I823673ffe64f08b060ec0db59f40c724b61ff345
Revert "Bluetooth: Move to proper state."

This reverts commit 5b479b6ebd69cd58d7f78d4b6afd589aae7a0890.
This appears to cause state issues with broadcom adapters
(reconnection loops and missed disconnects were observed)
Revert "Bluetooth: Handle sub system restart gracefully"

This reverts commit b4bcafcb5327c5b4bcf89da60f09f6a063b034cc.
Our vendor implementations (broadcom, qcom, and ti) don't
have the cleanup method in bt_vendor_interface_t. Either patch
them all, or bt_vnd_if->ssr_cleanup() is going to break things

Change-Id: I1b90db7fd638783a97b25caeda6c0911dd26cfa5
btm: Fix BLE guard

The non-BLE build case was skipping feature querying entirely,
instead of doing it unconditionally, fixit

Change-Id: Ie3f0b942d0c1305df792de4702b01a9d161eab0b
Return an explicit error if initing BLE callbacks without support

It's cleaner to deal with an error than ifdeffing out half the code
that calls this.

Change-Id: I793ad8769e5e3adc69723f3708d0d72d3906f35b