[Fix #948] Avoid auto-correction changing code meaning in Blocks

Re-parse and check that the AST hasn't changed when doing auto-
correct in Blocks cop.
[Refactor] Extract module AutocorrectUnlessChangingAST
Merge pull request #959 from jonas054/fix_948_do_end_auto_correct

Fix do end auto-correct