refactoring and redesign. Block, Item and TileEntity are actually just one Entity if you think close enough. There is no need to separate them, and the implementation in minecraft is actually very tightly coupled. Instead of following the usual path to spread minecraft compatibility code everywhere, it is easier that those chould be handled in a centrailized place.