Updates dependencies to latest version.

All dependencies are updated except for jdom 1.1 and antlr 3.4. Updating
the former to jdom2 would require all users of the JDomDocumentToStream
module to migrate to jdom2, too. We do not want to force users to do this.
So, we stick to jdom 1.

We still use antlr 3.4 on our build system to generate the Flux parser and
lexer. As there is no need to update this at the moment, we stay on
antlr 3.4.
Removed eclipse project files from repository

These files should not be included in the repository.
Generate Flux parser and lexer as part of the build cycle

This commit updates the maven configuration to generate the code files for
the parser and lexer for Flux during the build process. The pre-generated
code files for the Flux parser and lexer are removed from the repository.

This change can cause peculiar errors if you do a `mvn clean` followed by
a `mvn install` while the project is opened in eclipse (or possibly any
other IDE that automatically compiles sources in the background). The
reason for this is that eclipe starts compiling the source files again as
soon as `mvn clean` completes. However, at this point the files generated
by antlr are not yet re-generated (and eclipse does not generate them) so
any files relying on these generated files will fail to compile.

The best approach to avoid problems during `mvn clean` is to close the
project in eclipse, run `mvn clean test` on the command line and only open
the project again once this has finished. Subsequently, eclipse background
complilation should work well.

This commit also updates the antlr version to 3.5.1.
Updated date in copyright notice and added license file
Updated README file for the coming metafacture-core release.

The README now provides much more information than before. This should make
it easier for new users to get started with Metafacture.
[maven-release-plugin] prepare release metafacture-core-2.0.0
[maven-release-plugin] prepare for next development iteration
Minor change: removed duplicated code in `flush` method.

Refactored `flush` to use `clear` method instead of repeating the code
from this method.
Fixed #177: Condition was not reset when collector was reset

If a collector has an reset="true" attribute one would expect that this
also resets the state of an if-condition in the collector. However, this
was not the case. This commits fixes this.

Please note that this may change the behaviour of existing scripts if
they relied on the condition not being reset with the reset of the
collector.
Fixed #178: Reset conditions if sameEntity is true

If a collector has an `sameEntity="true"` set, it is reset whenever
the current entity changes. As described in issue #178 the current
implementation fails to reset the condition during these reset
operations. This commit fixes this.

Additionally, the test cases for the if-condition have been moved
into a separate xml-file as quite a number of tests have
accumulated so that it makes sense to keep them in there on test
file.
Fixed `getStream` method to not create the `File` object twice.
Fix #179: Output message of wrapped exceptions

The `DefaultErrorHandler` used by Metamorph should include the message
of the original exception it received.
Fix #180: output stack trace

`ObjectExceptionCatcher` now optionally outputs a stack trace. Set the
`logStackTrace` property to true to enable stack trace logging.

The syntax of the log messages created by `ObjectExceptionCatcher` has
changed to better separate end user related messages and developer related
messages.

This commit also refactors the test case for `ObjectExceptionCatcher` so
that the presence of log message is now properly checked for.
Adds a setter for `logPrefix` in exception catcher

The `logPrefix` in `ObjectExceptionCatcher` should not only be settable
via the constructor but through a setter method as well.

Additionally, this commit removes some superfluous white space.
Hint using Java 8
Merge pull request #184 from guenterh/master

Hint using Java 8
Formeta: Escape leading and trailing whitespace

If names and values are not quoted then leading and trailing white space
must be escaped in order to make it part of the name/value. This commit
modifies the Formeta formatter to output the  extra escapes required.
Formeta: Only accept allowed escape sequences

The Formeta parser used to allow any character in an escape sequence.
Most characters were simply replaced with themselves. This behaviour
makes the introduction of new escape codes in the future very difficult.
Thus, this commit changes the parser behaviour so that only the
currently used escape sequences (nr",:{}\ and whitespace) are allowed.
Fix #192: AbstractTripleSort has memory leak.

AbstractTriplesSort registers with the JVM to be informed when
the available memory gets full. However, it never unregistered
from the JVM so that the JVM kept referring the instances
effectively producing a memory leak.

This commit fixes this leak by unregistering the module from
the JVM when calling closeStream().
Fixed coding style