Simplified GraphReader Tests
ResourceBasedTest Constructor
Simplified BranchCoverage Tests
Created PathReader

PathReader instead of PathValidator since we need the path information in
more than one place. Accounts for crossings as endpoints of a path.
ConstraintValidator Refactored

Rewrote tests to keep it DRY. ConstraintValidator allows crossings
as nodes of a Kuratowski subdivision.
Refactored PathReaderTest