Add a type printer for Scala compiler types.

This code follows closely what toString does in the Scala compiler, except
that it won’t print fully-qualified names. Most of the times, FQN are a nuisance
inside the IDE: They add clutter and little information, and when used from
quick-fix (add explicit type or implement abstract member), they need to be
manually removed.
Switch the quick fix to use the new printer (away with fully-qualified names!)
Switch the abstract member proposal to the new printer.
Hook completions to new printer.
Hook hovers to new printer
Make method name smaller in scaladoc hovers.
Add extra space between parameters.
Merge pull request #712 from dragos/improvement/type-printer

Show simple names instead of fully qualified names in quick fixes
Clear doc comments when fishing reloads.

Added one more entry to the diagnostic dialog (size of class loader cache).
Merge pull request #821 from dragos/issue/clear-doc-comments

Clear doc comments when fishing reloads.
Merge branch 'master' into redesign-quick-assists

Conflicts:
	org.scala-ide.sdt.core/src/org/scalaide/core/internal/quickassist/abstractimpl/AbstractMemberProposal.scala
	org.scala-ide.sdt.core/src/org/scalaide/core/internal/quickassist/abstractimpl/ImplAbstractMembers.scala
	org.scala-ide.sdt.core/src/org/scalaide/core/internal/quickassist/explicit/ExplicitReturnType.scala
Filter out duplicate positions

In order to avoid that quick fix proposals are shown multiple times, we
can either filter out duplicate positions or filter out duplicate
proposal display strings. The former is not only faster to compute
(because no proposals need to be computed multiple times) it also
doesn't filter out different proposals that have the same display string
(for whatever reason that should happen in future).

Fixes #1002286