WP-2919 Initial checkin for this, just to save off my work so far.