 and relatively free
 of dependency-related infrastructure.

 <p>In unit tests, the programmer can now construct objects directly
 (without an injector) and pass in mock dependencies. The programmer no
 longer needs to set up and tear down factories or service locators in each
 test. This greatly simplifies our unit test:

 <pre>   void testStopwatch() {
     Stopwatch sw = new Stopwatch(new MockTimeSource());
     ...
   }</pre>

 <p>The total decrease in unit-test complexity is proportional to the
 produc