merge Feature/device lookup with master

Builds out API functionality and adds test coverage.