Added task class

This is the foundation of task handling, as the next step would be to
create project feature which can dynamically manage task