Benchmark

I ran all the tests, do you want me to merge them together or what is the preferred way? If I need to alter anything, tell me and I'll update the pull-request.