CreateMethodProposal refactoring

To reuse behaviour in abstract members implementation feature
Abstract members implementation added

Current version limitations:
1) There is no stub generation for abstract val/vars
2) Type parameters for defs are not generated
3) The text overlaps with the icon in quick fix menu when there is one abstract method
4) Additional brace is added to the class while invoking abstract member implementation feature from class/trait with empty body:
class Test extends TestTrait {^
}
(but for: class Test extends TestTrait {^} result is correct)
5) Stub for abstract member is not generated while invoking abstract member implementation feature if the cursor is on `class`/`trait` keyword: cla^ss Test extends TestTrait
Remove useless conditions that check invalid input

In `CommentAutoIndentStrategy` the conditions that check if the input is
correct are useless because the docs don't state that invalid input can
be passed. While for Eclipse docs this doesn't mean anything all the
other auto edit strategies had never had any problems with invalid input.
Add auto breaking of comments functionality

With this feature multi-line and Scaladoc comments are automatically
broken after the print margin.

The feature can be enabled/disabled in `Scala -> Editor - Typing`.

Fixes #1002101
Add `override` keyword to some methods

I can't see these tickets any longer. Sadly I don't know of any linting
tools that could check the entire codebase for the missing `override`,
thus only the three reported classes are fixed and not more.

Fixes #1001938
Fixes #1001937
Fixes #1001936
Merge pull request #685 from sschaef/t-add-override

Add `override` keyword to some methods
Merge pull request #682 from sschaef/t1002101-auto-breaking-comments

T1002101 auto breaking comments
Stubs for abstract members - type params, val/var added
Stubs for abstract members - tests added
Merge pull request #672 from VladimirNik/abstract-members-implementation

Stubs for abstract members