Use a metaclass for the singleton pattern
Use a more pythonic way of looping
Don't use a class, but the object