Implementation of tasks

The pull request contains:

- new feature tasks
- command line interface
- tests
- docs

Note: This is a pull request to `master`, if you create a feature branch `tasks` I can pull to that branch instead.