add new Symfony factory syntax support

This resolves #21.
The return value should be a `\ReflectionMethod` instance (at least, this is what `ArgumentsValidatorInterface` expects it to be). Since the factory can now also be a function, I'd say the type should be less strict, namely `\ReflectionFunctionAbstract` (http://php.net/manual/en/class.reflectionfunctionabstract.php). So in the `ConstructorResolver` we would return an instance of `\ReflectionFunction`. And in the `ArgumentsValidator` and related classes we only need the abstract thing (which I learned about just now :)).