API surface cleanup and added support for DeviceIDs when searching for new lights