Add support for abstract tool flags

This allows to specify compiler flags in a compiler-agnostic way, leaving
it to the Tool-derived compiler wrapper to translate them to command-line
flags for a specific compiler.
Rename make.ScheduledJob to make.Job