Added function to get files for a commit
Rewriting of WW instance for core extender
Added getHead function
Working Tree monads and type classes

Implementation of WorkingTreeWriter and WorkingTreeReader
monads and type classes. This is in an effort to add one
more layer of abstraction so as to almost completely move
IO from the code into very restrictive places.