Use Parser::Base#tokenize instead of patching Parser::Lexer#advance.

We can remove some code for functionality that is now available
in Parser.
Provide file name to Parser to get better error messages.
Let Parser do the reading of files.

Instead of reading files into strings in RuboCop, we let Parser::Source::Buffer read the files. This decreases duplication of functionality.
Remove the Position class and use Parser's Range class instead.
Get comments directly from #tokenize.

We don't need to extract comments from the array of tokens after a fix
in parser-2.0.0.beta2.
Parse spec example code in memory rather than from temporary file.
Merge pull request #202 from jonas054/review_comments

Fixes based on review comments