`public function __construct(XmlRpc $client)` would do the trick, and we'd get rid of some code...

The disadvantage is that you now do `new SomeFactory(new Adapter(new Client)));`, but I think that's cleaner than having something happen under the hood