add FunctionsInterface
add Concretes\Functions
add MatcherInjectableInterface
add MatchableInterface
add Concretes\RegisterableFactoryInjectable
split Registerable::getClass()
replace Registerable -> Concretes\Registerable
add tests for Concretes\Functions, and implemented new method newInstanceArgs()
Concretes\Registerable now depends on FunctionsInterface
fixed Concretes\RegisterableFactoryInjectable
Merge pull request #7 from tamakiii/hotfix/4_impl_factory_matcher

Hotfix/4 impl factory matcher