Resolves #104 & #97

> Applied facade pattern & refactored DataFile
> DataFile's public methods should function as before
> Classes that depended on DataFile should not need to make any changes
> Comments are mostly out-of-date
> Updated comment in Task
> Bug fix in TaskTest