Unified tests initialization for IntelliJ 13+ Community and Ultimate
Updated IntelliJ version
Revert "Unified tests initialization for IntelliJ 13+ Community and Ultimate"

This reverts commit 296ef1bdf93e1130d2735fdf7e945f030b809b56.
DONT PUSH - git add .idea

Just to make fuckin' git diffs sane.
DONT PUSH - various local changes
DONT PUSH - More useful debug output
DONT PUSH: separate run-tests target in build.xml
DONT PUSH - PIT testing stuff
FUZZER - FuzzTest is good to go
Make '>' not add trailing whitespace to empty lines.
Make 'J' not add a space in some situations

:help J tells that a joining space is not added in these situations:
    - the first line has trailing whitespace
    - the second line starts with a (possibly indented) ')'
Add some missing key names.
Optimize character case changing operations

Previously, performing e.g. visual '~' on a large file would completely
lock up the IDE. The culprit seemed to be the calls to replaceText() one
character at a time, which is not a cheap operation since each
replaceText() will for example trigger a DocumentChanged event.
Move ChangeActionTest.doTest() to VimTestCase.

This method is convenient in other tests as well.
Add tests for case changing operations

Add tests for the following commands:
- gu, gU, g~ in normal mode
- u, U, ~ in visual mode
Add unit tests for Ex ranges

Adds tests for ranges in Ex commands. Almost every kind of range has
basic tests, except the following are still totally untested:
    - \/, \?, \&
    - register ranges
    - syntax errors in ranges
Add testcase for '>' in visual block mode
Add unit tests for some replace commands

Adds tests for: |r|, |s|, |R|, and <Ins> in insert mode.
Add tests for change number operations (<C-A>, <C-X>)
Add few simple mark tests.