Shift all task log related methods to new class

https://github.com/cs2103aug2014-f11-3j/main/issues/57

Why is this change necessary?
To make code in Database class neater.

How does it address the issue?
Creating a new class TaskLogger abstracts away task log related methods
and variables from Database class, thus making code in Database class
neater. Also, having a TaskLogger class makes its methods more
re-usable.

What side effects does this change have?
Database has to construct the TaskLogger class if it were to log tasks
to a text file.