Moved logic out of Containers, the old filtered slots were not always the same
logic as the IInventory.
Moved ISidedInventory logic up to TileForestry and use InventoryAdapters
to override only the methods we need to.
Tested a ton but there will be some new issues given the scope.
Fix up some null checks
Clean up redundant array creation to varargs parameter
Remove redundant type casts
Simplify arithmetic
Use foreach loops
Remove unused code
Minor cleanup
* Updated for BC 6.0.x compatibility
* Re-implemented the Pipes plugin
* Converted to vanilla assets lang system
* Converted to standard gradle file structure
* General warnings cleanup