Is there a specific API document for ycmd? I tried looking through the code base and did not see anything explicit. For emacs support the implementation will have to be in elisp, so having a python independent way of describing the API would be helpful.