Fix for OrderedEnumerable null comparer

OrderedEnumerable will use the Comparer<TKey>.Default when null is
provided.
Fix for Expressions

The fields Globals, Locals and Parent of ExecutionScope are required to
be public because they are accessed from Reflection. This also matches
the .NET specification.
Expressions review + clean up & TypeHelper improved
Updated Copyright
Merge remote-tracking branch 'origin/Fix' into Feature

* origin/Fix:
  Updated Copyright
  Expressions review + clean up & TypeHelper improved
  Fix for Expressions
  Fix for OrderedEnumerable null comparer