Add the ability to define a target programmatically