Implement ycmd-minor-mode

Implement a minor-mode for ycmd. The mode adds hooks in order to have different triggers for a reparse. With the `ycmd-set-needs-parse` list the user is able to control when the buffer should be marked for reparsing. For now `save` and `new-line` or manual reparse is supported, but might be extended for other methods like an idle-timer. 
We don't seem to be actually *marking* anything now. Rather, we're simply triggering re-parsing under certain conditions. I'll merge this and fix the docstring afterward.