Added fallback and fixed typos
Fixed typo
Changed backend to use express-device's backend
Reworked documentation
Added preferences support
Added more device types