Show encoding errors as offences.

They are errors in the inspected files, not bugs in RuboCop, so it makes more sense to report them in this way. An example where this occurs is gems/builder-3.0.4/test/performance.rb.
Merge pull request #575 from jonas054/encoding_offences

Show encoding errors as offences.
Split surrounding_space.rb into one file per class and module.
Support auto-correction in many space related cops.

For #553.
Fix bug in SpaceAroundOperators making it report tabs as missing space.
Skip auto-correction in some conflict cases.

Stop auto-correction in HashSyntax if it creates illegal code. Correction of `{:a=>1}` by both HashSyntax and SpaceAroundOperators destroys the code.

Bail out of TrailingBlankLines auto-correction if there are also TrailingWhitespace offences in those lines.

Bail out of MethodCallParentheses auto-correction if the call is going to be auto-corrected by EmptyLiteral.