Updated several definitions to reflect changes in C# 6.0. Structs are now immutable.
Added test cases
Changes for consistency with new C# 6.0 functionality