I think it may be interesting to use http://php.net/manual/en/reflectionclass.newinstancewithoutconstructor.php to achieve automatic instantiation. Not for this PR though.