use the VersionMatcher instead of a string on the Dependency
basic version resolution working using ranges. Added logger for debugging
Add log level as console option
rename 'Dependencies' field on Dependency to 'Transitive' so make it clear what it is
add version range to test solution
update TODO notes
add beginnings of some documentation