[backport] Add buildcharacter.properties to .gitignore.

(cherry picked from commit 693e55e1cb75055bb243ffca2e18b8e44e80bb8c)
Merge pull request #3116 from retronym/topic/backport-character-ignore

Add buildcharacter.properties to .gitignore.
Merge commit 'e350bd2cbc'; commit '2bfe0e797c2b9c57277475c9296e36cbf868b7db' into merge-2.10
Merge commit '25bcba59ce' into merge-2.10
Merge commit '50c8b39ec4' into merge-2.10
Merge commit '075f6f260c'; commit 'e09a8a2b7f' into merge-2.10
Merge commit '6045a05b83' into merge-2.10

Conflicts:
	src/interactive/scala/tools/nsc/interactive/Global.scala
Merge branch '2.10.x' into merge-2.10

Intermediate steps:

```
g merge -s ours e350bd2cbc 2bfe0e797c2b9c57277475c9296e36cbf868b7db
g merge 25bcba59ce
g merge -s ours 50c8b39ec4
g merge 075f6f260c e09a8a2b7f
g merge 6045a05b83 # update check file for presentation/completion-implicit-chained
g merge -s ours 2.10.x
```
Updated Eclipse .classpath for partest and scaladoc projects
Merge pull request #3142 from skyluc/bad-markdown-guidelines

Fixes markdown syntax
Merge pull request #3133 from adriaanm/merge-2.10

Merge 2.10
Revert "temporarily disables run/reflection-sync-subtypes"

This reverts commit 04e2dbb29830d0e511cdfa8c132a9fad91d657ed,
by avoiding the ill-fated attempt to short-circuit the global
reflection lock.

I think we can do better performance wise, but lets at least
get something correct to start with.
Merge pull request #3139 from dotta/issue/updated-eclipse-project-files

Updated Eclipse .classpath for partest and scaladoc projects
Merge pull request #3143 from retronym/ticket/reflection-sync-restor

Revert "temporarily disables run/reflection-sync-subtypes"
Test infrastructure for scope completion

Adds a new marker /*_*/ to trigger scope completion test.
Original type completion test oracles update for the tweaked output
Adds test cases for scope completion
SI-7280 Scope completion not returning members provided by imports

Updates localeContext() to return the best context possible when there are none directly
associated with the given position. It happens when an expression cannot be
successfully typed, as no precise ContextTree covers the expression location, or if the
position is not inside any expression.
Adds corresponding tests