Separation of tests and benchmarks

Tests now refactored so that all pass within reasonable times.
Benchmarks in a separate source directory.
Refactored tests and benchmarks

Benchmarks now in a separate directory in src/bench
Some maximum values in tests decreased to make tests less memory demanding
 and faster