Adding overridable unload() to Loader class

This patch adds the possibility to manually provide an implementation
for unloading all tables of the benchmark. While the current
implementation uses SQL only, with this patch its possible to override
the method from Loader::unload() and implement own behavior.

The default implementation uses the same behavior as for the loading
of tables via the `makeLoaderImpl` method of the `BenchmarkModule`
New Command Line Options and Sampling Types

This patch introduces a new more verbose output for results. It allows
to print the sampled version of the output grouped by transaction.
This will create a single file with the name of the transaction and
the default output file name for each transaction.

The new options in summary

  * `-ss` - more verbose output, adding samples by transaction
  * `-d` - define output directory for the output to avoid cluttering the base directory
  * `-t` - prepend timestamp for the output files for more logical sorting and better information recovery
Merge pull request #68 from grundprinzip/feature/ttype_samples

New Command Line Options and Sampling Types
Merge pull request #67 from grundprinzip/feature/unload

Adding overridable unload() to Loader class