Add item types as a model

* Fixes #11
Rearrange the routes a bit
Clean up the item class

* Move out ItemOptions
* Pull out the qr code class
* Pull out unused methods
* Remove unnecessary callback