Implement flexible target specification

See commit message.
This argument didn't exist before?