- cleanup and BLEDevice abstraction
- untested SAM + SAMD support