Add interface to inventories for per slot item access information

This interface is all that is needed for universal inventory compatiblity when slots have properties such as what items they can accept, whether they are input or output, and how many of an item they can accept.

Examples:
Slots that can only accept certain items (forestry machines or factorization barrels)
Slots that are input or output only (thermal expansion side config)
Slots that don't want their last item taken via automation (possibly a barrel upgrade for this)
Slots that have different max sizes.