Build Directory Cleaning Functionality

This update adds code to remove build directories and intermediateJSON.json files that might be present from previous compilation and build runs. Prior to this change, successive builds would append all new data to the previously built files and incorrectly duplicate the command log within the intermediateJSON.json file.
You can more clearly get the parent of a path by doing `Paths.get(filePath).getParent;`
The new java 1.7 Path API is quite awesome. Together with the Apache file utils it actually makes IO code quite pleasurable :)