static MessageHierarchy() { // Get the all of the types in the Assembly that are derived from Message and then build a // backing TypeTree. // TODO: Put in timing logging TypeTree.BuildTree(GetTypesDerivedFrom(typeof(Message))); AppDomain.CurrentDomain.AssemblyLoad += AssemblyLoadEventHandler; }