Automated tests for various algorithms and platforms

This patch adds a module that contains test-related classes. Tests can be defined and configured through templates. We use the test module to implement tests for several classification algorithms for local, threads and storm platforms (for now).

Also includes a fix for handling last event in stream.

Introduces the surefire plugin for tests, so we can get proper test output files and configure test VMs. (we might still have to customize travis for maven's VM parameters)
The idea is to share the classes from the test framework and their few dependencies across samoa platforms. We can do this by building a test-jar artifact and referencing it from all platforms within the test scope.

See also http://maven.apache.org/guides/mini/guide-attached-tests.html