Flat directory structure is easier to manage
Fix `Makefile` for new directory structure
Remove unused file
Creation of unused `.o` files should be invoked by `test`
Merge branch 'toplevel-Makefile'