extract new output file map task lib
adding mapping to quickly rebuild project
extract methods for ensuring object dirs exist at compile time
be explicit about which subtasks depend on the framework's dependencies
extract new task lib for building an underlying module