Use Dictionary instead of List to when we just want to check for existence.
Add locking to the type/member registration in Class.