Add empty class library and test projects
Mock up Inject extension method
Mock up InjectField
Implement Inject with mock GetTargets method
Implement and test GetTargets
Implement methods for getting explicit types of targets
Implement InjectField and InjectProperty
Add equality methods for mock Account
Implement InjectProperty
Implement SetStringValue
Implement Apply methods
Empty Monad projects
Implement Identity monad
Implement Maybe
Merge branch 'feature/Monad' into develop
Implement Maybe.Select
Use Maybe to wrap InjectionTarget.Attribute
Implement copy constructor of InjectionTarget
Implement type dispatch from InjectionTarget base
Implement GetTargets by predicate