Avoid extra space when reporting error for compiler modifiers
Try to recover incomplete initializers. Fixes #4964
Don't report error for incomplete member type
Maintain more tokens locations.
Open test files in read-only mode (so it will work on devices where permissions won't allow read/write)
[monodoc] Parse correctly '{' and '}' as '<' and '>' (generic params) in ECMA url.

These characters are used in place of normal bracket in some part of the xsl generation code, mostly to prevent ASP.NET default code injection policy to kick in.
[monodoc] Add reachability unit test for ASP.NET style URLs
[monodoc] Add utility property Generic*IsNumeric to distinguish between types using full generic notation (e.g. Foo<T1, T2>) or just backtick notation (e.g. Foo`2)
[IDesigner] Add cref reachability checker unit test though disabled for now.

Mono documentation has a lot of syntax error in its crefs so it's not good material for a reliable unit test until we can do better on that front.
[monodoc] Add a simple stack-based generic argument count method.
[monodoc] Remove previous horrible generic backtick notation hack and properly handle them in node search.
Implement the Marshal.Read/WriteXXX methods using unsafe code instead of icalls.
Put back a cattr removed by mistake by 70141dc9f523282bc3b3b947cc3e36ef594ad15e.
Use (uint) casts in the Marshal.Read/WriteXXX () methods to speed up the alignment checks.