Add create device endpoint

Fix bug where devices that didn't exist would still return 200's