Dim refactoring

Remove DimIProxy class
Replace ternary operator with coalesce where possible
Using native .NET Resources
Convert AstNode::GetPosition and AstNode::SetPosition methods to a property
Replace usage of TreeSet<T> with SortedSet<T>
Rename Name::Length method to IdentifierLength method
Convert AstNode::GetLength and AstNode::SetLength methods to a property
Replace Main.IProxy with Program.IProxy
Fix
Fix typo ENCHANCED_SECURITY -> ENHANCED_SECURITY
Fix reading from a stream
Move Arrays class to Utils
Use Monitor instead of Sharpen's runtime.
Using .NET Thread instead of Sharpen's
Convert if-else-if... to switch
Remove RunProxy
Remove IProxy
Fix generating code for generators
Refactoring of CompilerEnvirons
AllFeatures