Fix tests to run on Windows platform

Changed line endings to LF and added .gitattributes file to enforce LF
line endings in future. Changed SbtBuilderTest to correclty check
classpaths on both Windows and Unix systems. Proper try/finally for
tests using createProjects added.

Fixes #1001981
Merge pull request #588 from Kwestor/windows-build-1001981

Fix tests to run on Windows platform
Fix race condition in local rename refactoring

The local rename refactoring could cause a race condition (running a
presentation compiler method outside the PC thread), now it's safely
wrapped inside an ask call.
Harden asInstanceOfOpt to be robust for nulls or reflection crashes.
Reverts logic for unloading units in askLoadedType

The loagic for handling loading/unloading of units in `askLoadedType` was moved
in the compiler side. See https://github.com/scala/scala/pull/3209.  (Also,
mind that this commit should be merged together with the previously linked
scala PR).

This reverts most of the changes made in SHA:
43f8f2bdf4bd99cc85da7f54a0f374be737d4b2f

Re #1001388
Don't create a reconciler for non-editor source configurations.

In the Syntax Coloring preview pane we create a source viewer without an
editor. The reconciler needs an editor to get to the compilation unit, so
we don't attach a reconciler in this case (there won't be any editing).

We might need to revisit this if we ever want to use a source viewer outside
an editor (with reconciliation capabilities).
Merge pull request #594 from dotta/issue/ask-loaded-type

Reverts logic for unloading units in askLoadedType
Merge pull request #596 from dragos/issue/fix-quiescence-syntax-coloring-window-crash

Fix syntax coloring window crash