Bring the submodules properly back into the source tree

When I flattened the source tree for open sourcing it failed to keep the
submodules tracked properly

Fixes #1
Clean up the Makefile and add all the phony targets
Ignore some more common files
Clean-up some of the README formatting