Parse caching and enable tooltip support

Language service caching wasn't working because I always fed in DateTime.Now. Projects now save their load time so that we can take advantage of caching where appropriate. Emacs has some small client-side caching because completion-at-point calls the function multiple times needlessly, and this avoids making multiple requests to the background process.

We also now have tooltip support. Using it requires the `pos-tip` library. It is bound to `C-c C-t`, which is suggestive of tooltips, but very awkward to type. Alternative suggestions are welcomed.