* adding sphinx documentation
* moving from `dataclasses` to `attrs`
* adding `container` flag to the `ShellCommandTask`
* fixing `cmdline`, `command_args` and `container_args` for tasks with states
* adding `CONTRIBUTING.md`
* fixing hash calculations for inputs with a list of files
* using `attr.NOTHING` for input that is not set