Expanded target accessors

These functions provide support for choosing sane defaults for and taking full advantage of target-specific codegen.