Forgot to call LazyBuildMixIn.onLoad.
Introduced LazyLoadingJob marker interface.
1. ItemListenerImpl needs to know which items have a RunMap on which it can call updateBaseDir.
   Using reflection sort of worked for this purpose, but was messy.
2. onLoad needs to get the RunMap from a peer of the owning job.
   Reflectively calling _getRuns on the peer did not work since it may not yet have had a base dir set.
So we need a way of finding the actual mixin (or at least the RunMap) of a given job.
This is not pretty but seems preferable to injecting something into the type hierarchy between AbstractProject and Job.