partially fixed InventoryDevice (WIP) - lots of code to clean