Adds missing getOption() synchronization call

The previous getOption call (old API) was replaced by an asyncExec, it requires
a getOption() (new API) to wait for the execution of the code.
Merge pull request #798 from skyluc/issue/NPE-create-class

Adds missing getOption() synchronization call
Extract project-specific logic out of the PresentationCompiler proxy.

Also added a factory method in the API.
Decouple watchdog from compiler proxy through Pub/Sub.

Also fix some NPEs during tests.
Merge pull request #796 from dragos/api/compiler-project-disentangle

Disentangle presentation compiler and Scala project
Cleanup locate() and friends.

Signed-off-by: François Garillot <francois.garillot@typesafe.com>
Presentation compiler elements for ScalaDoc
Adding Presentation compiler tests, including inherited & param symbols
Completion Integration for ScalaDoc
Integrate headerForSymbol into API
Integration of scalaDoc with ScalaHover.

ScalaDoc is only obtained through F2.