More secure comparison of HMAC strings

To avoid timing attacks. The implementation of SecureCompareStrings is pulled
directly from python 3.4 sources.
indentation fix
Support for SyntaxErrors in CSharp completer
Helper test func for stopping OmniSharp server.
Fixing tests

Tests read the default hmac_secret from default_settings.json, and that value is
read as a unicode object by the json parser, not str.
Encoding the x-ycm-hmac header value as base64.

We need to respect RFC 5987.
Merge pull request #956 from mispencer/CsharpErrorDisplay

Support for diagnostic for C#
Formatting fixes
Refactoring tests to use new helper methods

Plus minor formatting fixes.
Formatting fixes
Refactored cs_completer tests some more

Common server-wait code is in a helper func now.
Remove unused import
Docs for region syntax groups

Fixes #959
ycmd's JSON interface now uses 1-based indices

This makes far more sense because editors manipulate user-level errors/warnings
on a 1-based system, not a 0-based one.
Fixing OmniCompleter to use 1-based start_column

Fixes #963.
whitespace
Moved OmniSharpServer to third_party folder
Using OmniSharp from new directory
Moved ycmd-related files to third_party/ycmd

This is in preparation of splitting ycmd into a separate project.
Updating code to work with new ycmd location