How do I associate a launchd 2 plist with its domain and service targets?
If you can, file a bug with Apple regarding incomplete or unclear documentation.

launchd appears to have been rewritten for OS X 10.10 and is likely still in flux for a few minor versions yet.

Domains and service targets appear to be an abstraction of the various folders available for launchd job tickets. They also allow a means for launchctl commands to target specific sessions; a feature that should allow a launchctl command to affect other user sessions.

However, as of OS X 10.10.1, the launchd.plist man page makes no mention of deprecated KeepAlive or RunAtLoad keys.

Apple suggest avoiding KeepAlive and RunAtLoad because the intention is to avoid ever launching a process without a guarantee of work to be done. Both keys remain and are required for many tasks. 

The best reference document remains Technical Note TN2083, Daemons and Agents. This document provides a great insight into launchd and Apple's intentions towards how background processes should be implemented.