Update #5 (Cleanup)

Split the main file into multiple separate files inside the blocks,
items and tools packages. No impact on functionality, just makes the
code tidier and easier to read.