XML Collector Improvements

Refactored the AbstractXmlCollectionHandler to have a default
implementation of the collect method, that is going to invoque an
abstract method to fill the collection set. All the implementations must
implement just this small method, all the rest of the operations can be
shared.

Some JavaDocs have been updated.

NEW FEATURE:

Adding a new implementation of the AbstractXmlCollectionHandler based on
VTD-XML (thanks to Ronald Roskens for this awsome code).

The VTD-XML library is orders of magnitude faster than the standard XML
parser built in on Java.

The time spent parsing XMLs will be drastically reduced by using this
version of the handler. Here is an example of how to use it:

<package name="XML Collection">
  <filter>IPADDR != '0.0.0.0'</filter>
  <include-range begin="1.1.1.1" end="254.254.254.254"/>
  <service name="VTD_XML" interval="300000" user-defined="false"
status="on">
    <parameter key="collection" value="vtd-xml-collection"/>
    <parameter key="handler-class"
value="org.opennms.protocols.xml.vtdxml.DefaultVTDXmlCollectionHandler"/>
  </service>
</package>

<collector service="VTD_XML"
class-name="org.opennms.protocols.xml.collector.XmlCollector"/>

NOTE: This new handler is optional and it is going to be used only if
the handler-class is provided while configuring the service on
collectd-configuration.xml.