Making Glimpse CLS-compliant.

Pulling in some additional information, to [hopefully] make the code review easier.

[CA1014: Mark assemblies with CLSCompliantAttribute] (http://msdn.microsoft.com/en-us/library/ms182156.aspx)
"The Common Language Specification (CLS) defines naming restrictions, data types, and rules to which assemblies must conform if they will be used across programming languages. Good design dictates that all assemblies explicitly indicate CLS compliance with CLSCompliantAttribute."
"If you do not want the assembly to be compliant, apply the attribute and set its value to false."

[Making Your Code CLS Compliant] (http://www.c-sharpcorner.com/uploadfile/avmahesh/making-your-code-cls-compliant/)
"If you mark an assembly as CLSCompliant and if any of the publicly exposed types of members are not CLS compliant then the compiler would raise an error"

[What is the 'CLSCompliant' attribute in .NET?] (http://stackoverflow.com/questions/570452/what-is-the-clscompliant-attribute-in-net)
"If you intend your code to be consumed by other developers, your API (your public classes and methods) should be CLS compliant."

[Go to "Effective C#: 50 Specific Ways to Improve Your C#" pageEffective C#: 50 Specific Ways to Improve Your C#] (http://www.amazon.com/Effective-Specific-Ways-Improve-Your/dp/0321245660#reader_0321245660) Pages 181-186 (Item 30)
"The payback of interlanguage operability is worth the extra time."

[Any reason not to mark a DLL as CLSCompliant?] (http://stackoverflow.com/questions/6982505/any-reason-not-to-mark-a-dll-as-clscompliant)
"There are several C# features that are not CLS compliant, for example unsigned types. Since several languages are case insensetive, there may not be classes and members that are differ only by case, MyObject and myObject, and several other features."
"CLS compliance is probably of most importance to library authors, who can't control who the caller is."