[vim plugin] Set omnifunc locally
[vim plugin] Use json.dumps to send data to vim

It handles string escaping and removes the need to manually build up
array and object strings.
[vim plugin] Fix bug in caching of completion results
[vim plugin] Add PreviewInfo function
[vim plugin] Add TernDoc command
[vim plugin] Send buffer to server when switching away from a modified buffer
[vim plugin] Prefix Python globals with tern_

I had assumed they'd be file namespaced. Hahah, yeah right.
Convert completion start/end to full-file-relative on the server side

Removes a bunch of awkward passing around of offsets.
[vim plugin] Add type- and definition-finding commands

(Adapted from Claus Reinke's implementation)
[vim plugin] Add documentation and type icons to completion hints

(Adapted from Claus Reinke's implementation)