Sketch: per-api-version defaults

regarding #1502
Yuck - methods on types.  I have to admit I'm very fond of our types being pure value objects.  This function could easily have a single typed argument.  Keeping defaults (including those with complex logic) close to their type definition is valuable though.