Align end with start

This is implementation of the idea to align the block's end with the start of the line where the `do` is defined.

This pass all examples except one - about the alignment on method arguments. This will also pass the two open tickets we have about EndAlignment.

If you run `./bin/rubocop` there are 27 files that fail the EndAlignment check.
My proposal is that we change the failing spec and thus the old behavior and fix/disable the offences in our own code to match the new check. But I want to hear your opinion. That's why I'm opening this PR with failing specs.

I tried to handle the failing example like a special case with our current code, but this resulted in failures of other examples. If you have idea how to handle the failing example, go ahead, I personally think it's not worth the effort as people can disable the cop or refactor their code in these cases. 

Please checkout this branch, run `./bin/rubocop`, see what fails and share your opinion how we should approach it. The plus in these changes is that the code is super simpler compared to the old one and we basically handle all cases we have seen so far.

PS. I'm going to the mountains tomorrow and will be online on Sunday.