Introduce commissioner

This is my extraction of the AST traversal logic. The Cop::Commissioner class is the only Parser::AST:Processor that traverses the AST and calls cops' specific callbacks.

All feedback is welcomed, but have in mind that I have changed basically every cop file, so this needs to be merged as soon as possible if there are no major problems and I will fix any minor issues later.

My simple benchmarks show that it takes 14sec to process the Rubocop project and 9sec with these changes. I can  say we can expect 25% improvement in the processing time.

PS. Actually, this is a BIG change. All cops written by 3rd party developers will need to be ported to the new way.