Coding style.
Make rtags-reparse stuff optional.
I apologize for this code but it's something of a performance
bottleneck (at least I think so) so I decided to do it with proper C
string handling in all it's godawful ridiculousness, memmoving, stack
buffers and all.

Anyway... Don't treat templatized parameters as something we should
optionally remove from symbolNames.

E.g.

void foo(List<int> bar)

doesn't need to exist both as:

foo(List<int> bar)

and

foo(List bar).

This patch will do that and fix some erroneous stomping on the wrong
bytes in the process.

For an example of something that went wrong, check out

https://github.com/Andersbakken/plast/blob/master/src/Plast.h

at 7c8f7d87e2ae6638d6740b5c356fffa762ee1e91

It showed up thusly:

$ rc -S JobMessaJ
JobMessaJobMessage::JobMessage
JobMessaJobMessage::JobMessage(uint64_t, const String &, const List &)
JobMessaJobMessage::JobMessage(uint64_t, const String &, const List &)::args
JobMessaJobMessage::JobMessage(uint64_t, const String &, const List &)::id
JobMessaJobMessage::JobMessage(uint64_t, const String &, const List &)::preprocessed
$ rc -S JobMessage::JobMessage
JobMessage::JobMessage
JobMessage::JobMessage(uint64_t, const String &, const List<String> &)
JobMessage::JobMessage(uint64_t, const String &, const List<String> &)::args
JobMessage::JobMessage(uint64_t, const String &, const List<String> &)::id
JobMessage::JobMessage(uint64_t, const String &, const List<String> &)::preprocessed
Work again without CompilerManager
Fix comment.
Remove some spaces that didn't belong.
Fix company-rtags completion regex for const member functions
e.g: void Foo::bar(int x) const
Improve performance when rtags updates completions

Previous High CPU Bottlenecks:
- `search-forward-regexp' in `rtags-diagnostics-process-filter'
- `search-forward-regexp' in `rtags-trim-whitespace'
- Copying completion data and parsing as strings instead of using the
original buffer and narrowing
Add hook that runs when completions are received and parsed; provides
rtags-ac with async completion experience

Fix performance bug for rtags-ac that called `rtags-diagnostics' each
time `ac-init' was called (instead of just once)

Don't use a timer to update completions (let completion system initiate)
Merge remote-tracking branch 'remotes/source/master' into completion-improvements
Reset accidental revert of rct submodule to older version
Check last completion location is valid
When completion results arrive, start rtags-ac via `ac-start' to only
show results completion inline; this prevents the case where it auto
expands when only one completion candidate exists, and 'fast' typing
could scramble the symbol name and be generally annoying to the user.
Merge pull request #225 from terranpro/completion-improvements

Completion improvements