Add a document setup and file buffer-based document provider.

This allows the hovers to retrieve the compilation unit, and it is the
way documents are handled elsewhere (sdt.core, JDT, play2).
Adapt to changes in master.
Add an ‘F3’ action to navigate to definition.

Closes #167.
Merge pull request #201 from dragos/api/new-compilation-unit

Sync with changes in master