Add ItemsStack interface, without any Inventory

Because of the debate with inventory formats (pr #9), I've moved the `ItemStack`
to a separate PR so that we can get this merged sooner, and continue
with interfaces that depend on this.
I'd say no, because an ItemStack can be used to represent multiple stacks. If I have a stack of minecraft:stone with quantity of 2304, then it's enough to fill an inventory.