Add a simple version number comparator

refs JENKINS-18727
Add a basic .gitignore file

It itgnores maven's target/ directory and jenkins' maven plugin work/
directory.
Choose the XSL file based on the report version

Starting with cpptest 9.0, the report file format changed slightly,
fortunately the tool version can be found at the same address xml-wise.

This implementation uses a stream reader to avoid completely reading the
report twice: once for the version, and once for the conversion. This is
convenient since the tool version is in the very first element.

The file `cpptestunit-9.0-to-junit-1.0.xsl` isn't actually part of this
commit.

refs JENKINS-18727
Import xslt for cpptest 9.0+ version

Courtesy of Parasoft
Merge pull request #6 from Zenika/cpptest-9.0-support

[JENKINS-18727] Cpptest 9.0+ support
Format
[maven-release-plugin] prepare release cpptest-0.12
[maven-release-plugin] prepare for next development iteration
Use a Digester instead of StAX to get the toolVer

The choice of StAX was made because the streaming aspect allowed a small
memory footprint. The `toolVer` attribute is located in the very first
XML tag, so reading the whole report was not needed. The issue is that
it failed on a slave. It now uses a `Digester` from commons-digester.

The version extraction has been moved to a new VersionParser, also only
visible within the same package. Moving to a dedicated class made it
easier to test this very part.
Check which priorities we extract from annotations

Refactoring is coming, and we need to make sure we don't break stuff. It
would be better to test everything, but this is still better than no
test.
Refactoring of the parsing code

The main idea is to separate the parsing "plumbing" (commons-digester)
from the data model. Instead of an anemic object model, the logic has
been moved to the mapped classes.

A `FileAnnotationBuilder` interface with package visibility was added to
create a bridge between the XML parsing and the data model. Overall, it
means less lines of code, and less complexity in various places.

Unused fields were also removed from the object model. They can be added
back when needed, but right now, YAGNI...
Improve support for C++test 9.0+

One field has apparently been replaced by a new one. The priority test
case (`CpptestParserPriorityTest`) now checks a 9.5 report.
More refactoring on the parsing code

It uses maps instead of lists for lookups, and more unused fields were
removed.
Add documentation about recently-added classes

Also tweaked visibility modifiers, and used types in some places.
Ignore "Unverified Outcomes" in the test reports
Merge pull request #7 from Zenika/digester

Cpptest 9.0+ support, take 2
[maven-release-plugin] prepare release cpptest-0.13
[maven-release-plugin] prepare for next development iteration