Switch C# diagnostics to CodeCheck

Switch the C# diagnostics from syntax check call to codecheck call. Codecheck combines the existing syntax check, a new semantic check and a code issue check. 

For some examples, codecheck will properly tell you that ``"Test".NonexistanceMethod()`` is a error, and will warn you if an object's field is never used (this is a code issue).

See the original semantic check pull, https://github.com/nosami/OmniSharpServer/pull/97, and the codecheck pull, https://github.com/nosami/OmniSharpServer/pull/112, for more information.