Purpose:
A general storage block to condense storage of non block items, and give them a placeable block form.
Function:
Adds a single block, the crate.
Craft it with a plank surrounded by four sticks.
Right click the block with a stack of non-block items to convert 8 of them into a Crate.
Right click the block with a crate of items to convert it back.
Automation:
Empty crate block has an input slot and an output slot which can be filled and taken from by hoppers.
When the block is powered,
if the input slot contains 8 or more of a crateable item they will be crafted into the output slot (unless the slot has a different type of crate, then they will be ejected)
if the input slot contains less than 8 items, or a non-crateable item, its contents will be ejected.
MISC:
The full crate is a second block, so no longer useable like the normal crate.
A crateable item is just an item that begins with "item." in its description id, this means some placeable items are still crateable, like redstone dust.
The crate holds 8 items instead of 9 as a means of balance (it's automatable but less efficient, so not a replacement for existing storage blocks).
A full crate can't be broken down in the crafting menu.
If anyone knows how to make a procedural texture based on an arbitrary texture input (color sampling or something) and use it as a background to reflect what's in the crate that would be nice, I may add a tile renderer in the future.