The class libraries are grouped together in the assemblies they belong. Each directory here represents an assembly, and inside each directory we divide the code based on the namespace they implement. * Missing implementation bits If you implement a class and you are missing implementation bits, please put in the code the word "TODO" and a description of what is missing to be implemented. * Tagging buggy code If there is a bug in your implementation tag the problem by using the word "FIXME" in the code, together with a description of the problem. Do not use XXX or obscure descriptions, because otherwise people will not be able to understand what you mean. * Tagging Lame specs Sometimes the specification will be lame (consider Version.ToString (fieldCount) where there is no way of knowing how many fields are available, making the API not only stupid, but leading to unreliable code). In those cases, use the keyword "LAMESPEC". * Coding consideration Use 8 space tabs for writing your code (hopefully we can keep this consistent). If you are modifying someone else's code, try to keep the coding style similar.