POM: Uses version properties instead of dependency management block

Running `mvn help:effective-pom` shows the difference between the two, with a
dependency management section, all sub-projects inherit that whole section
which may be misleading. At least with property inheritance it is one line per
dependency (and not whole maven coordinates).

Also:
 - Uses regular dependency section in the parent pom to set test deps
 - Uses ${project.version} for sub-module deps