Refactoring

* new Benchmark interface and new AbstractBenchmark abstract class to help creating new kinds of benchmark
* new StatsTrait to help data treatment.
Rewriting example