Moves module description into class and splits work into smaller functions.
Improves returning of error codes.
Extracts out logic that checks for the presence of javadocs.
Moves test functions and knowledge of path structure into ModuleDescription.
Adds basic templating by including a php file.
Fixes typos that made it not run.