Add autocompletion support

Hello,

Don't pull this yet, this is work in progress.

Eventually this will fix #155 and is related to company-mode/company-mode#82

@dgutov: can you help me with the source? Right now this is very basic but somewhat "works".

I ripped parts of `company-clang` but probably not enough :)

Basically one of the issue is that `(rtags-update-completions)` is asynchronous, but let's keep this for latter. Right now pressing `.` then erasing it then pressing `.` again gives somewhat correct completions.

I have other issues that are more important to fix, namely that in the case of overloads for c++, I need to insert `append` on selection but I would like to display `append(const char* s)`, it looks like I can't use `meta`, `annotate` or `candidate` for this because it's a special case. Any pointers?

Right now the data I receive is like this (but that will likely be changed as it's a bit silly):

``` scheme
'("append" "string& append(const char* s)" "CXXMETHOD" "append" "string& append(const string& s)" "CXXMETHOD")
```