Eliminating main+test duality, use Project.Root.

A MavenProject can be resolved in main or test mode, and the former declares a
test-moded latter to be its companion project. This is all quite tidy except
one bit of hackery where we currently make some assumptions when determining
from a source file path whether we should be in main or test mode.