closes #10 (Task object should be compatible with Promises/A+)