Testing framework

This branch introduces the idea of a framework to evaluate the different sorting methods when compared to a built in solution.