Skarmark distributed tasks

https://rally1.rallydev.com/#/7675694122d/detail/userstory/13973707048

This PR contains following changes - 
1. Added TaskStatus model to the db to track and query progress of a celery task.
2. Added TaskStatusManager containing CRUD and querying functionality for TaskStatus.
3. Overriding celery Task's on_success and on_failure handlers and __call__ to update TaskStatus with state changes, timestamps, results, traceback etc.
3. Unit tests

Questions -
1. Do we want to store Task's args and kwargs in TaskStatus db collection? I wasn't able to find a good usecase for it, so I haven't added it to the model right now. 

To do -
We need to add some kind of a reaper function to remove TaskStatuses which were finished before a certain timestamp.