The packageNames parameter was a Map<String, String>. This commit adds
a PackageName class, and changes the parameter to type PackageName.
This is necessary because the URIs that need to be mapped are not
valid XML element names, and hence could not be specified as keys
when the parameter was a map.
This also adds maven-plugin-testing-harness, to allow unit tests to be
written for the mojo, in addition to the existing integration tests.