Refactor Tasks for easier maintenance

For Task methods that simply pass through to the `params` object you can now just declare a `setters` map like

```js
setters: {
  'methodName': 'paramName'
}
```

This will generate the appropriate setter method and map it to the given param name.

For params where arrays are valid inputs you can also do...

```js
setters: {
  'methodName': 'paramName[]'
}
```

This will generate a comma seperated list.