[RFC] job: Add optional {flags} parameter.

fixes #1574
The style guide doesn't say a lot about `switch`s, but I find this easier to parse without the `continue` on a new line. I can revert back to the `if`/`else` blocks if others don't agree.