Fix #1001394 Ignore source classpath entries that don't exist physically in the workspace.
m2e routinely adds optional CPEs for src/main/java, src/test/java even when
the directories are missing. SBT builder is not aware that they are optional
and aborts compilation.
Correct auto indent behavior in comments

The old behavior did not correctly indent text inside of comments
whereas the comments themselves are indented correctly. This commit
corrects the behavior by indent a new line to the same depth as the
previous line.

Another feature introduced is, that if the enter key is pressed while
the cursor is adjusted in an line not starting with a *, a completely
empty line is inserted instead of auto inserting a * sign at the begin
of the related line.

Furthermore, ScaladocAutoEditStrategy is renamed to
CommentAutoEditStrategy because this component does its auto edits not
only to Scaladoc but also to multi-line comments.
Fixes #1001326

This commit fixes ticket #1001326. Solved the problem by
overriding 'parseTree(source: SourceFile)' in
ScalaPresentationCompiler with an implementation that just
parses the source every time without trying to memorize
anything. Added tests that checked that

  1. You get a new parse tree every time you ask for one
  2. A parse tree should never contain any symbols or types [1]
  3. If you ask for a parse tree and then open the file it shouldn't
     change the parse tree you originally asked for, i.e. property
     2 still holds.

[1] There is an exception to this though. Some of the nodes that
    the compiler generates will actually contain symbols. I've
    chosen to just ignore these special cases for now.
Simplified ensureFolderExists function according to Iulian's suggestion.
2.9.x compatibility & refinement of symbol check

Had to modify the code a bit to make it compatible
with Scala 2.9.x. Instead of using dependent types
in a method signature I had to wrap the types in a
trait. Instead of using `Tree.forAll` I had to use
`Tree.exists` and modify the body of the predicate
accordingly.

I refined the symbol check so it doesn't match
against `Ident(nme.scala_)` but instead simply ignores
symbols that point to `definitions.ScalaPackage` This
is because `Ident(nme.scala_)` would ignore more nodes
than intended, i.e. `{ val scala = "awesome"; scala }`
would be ignored as well.
Merge pull request #262 from rkrzewski/master

Ignore non-existent source classpath entries
Merge pull request #269 from mads379/parsetree-1001326

Fixes #1001326
Removed old FIXMEs

The problem has been fixed by pr #251
Fix #1001310
Merge pull request #268 from sschaef/issue/correct-comment-indent

Correct auto indent behavior in comments
Merge pull request #270 from skyluc/issue/cleanup-todos-1001310

Removed old FIXMEs