add validation test back
add remaining coordinate validation tests
reimplement remaining unit tests