Major refactoring on Tasker API

The redundancy was annoying me, so I made a generic class that handles all
differents aspects of the application with the API like synchronization,
error handling and progress dialogs.