Redesign analysis logic of cop disabling comment

Introduce more rubust logic that uses comments and tokens from Parser
rather than analysing each source line with regexp.

This fixes #862.
Fix style issues by an oversight in the old comment parsing logic

The old parsing logic confused string literals including a cop disabling
comment such as 'something # rubocop:disable all' with real comments.