Replaced Syntastic support with YCM-native code

Currently, the only supported Syntastic features are the error signs in the
gutter. Other features will be added in the future.
Echoing diag text on when cursor on diag line
FAQ item about dropped Syntastic support
Now showing red squiggle under diagnostic location
Diagnostic struct now holds source ranges

Also, line/column/file info is now in Location. The server API is the same
currently, but will change to reflect all of this soon.
Increasing API version to 8

Needed because of recent changes to Diagnostic struct etc.
Diagnostic ranges now exposed to server clients

Still haven't used them in the Vim client though, but will soon.
Minor refactoring
DiagnosticInterface now uses server diag objects
Showing clang diag ranges with red squiggles
Now highlighting the full identifier for diag

Instead of just underlining the first char of an identifier, we now underline.
the full identifier.
Removing forgotten debug statement
Minor README rewording
Typo fix
More doc updates since Syntastic support removed

Not done yet, still a way to go.
New options for controlling the diag ui
Now can populate the loclist like Syntastic
Renaming and documenting the new options.
More doc updates for diagnostics UI
Minor doc rewording