Scala Hover API and fixes

Based on #812.

- fixed performance of hovers (scaladoc build lazily, and after retrieving errors)
- fixed deadlock in quickfixes (hidden by timeout)
- moved more types to public editor API.