Refactors tasks to make them accessible by project ID

Adds function to take a list of lists and flatten it into a list
Won't display subprojects in project view if there are none
Propagates array of tasks (indexed by project ID) to project view