Metaclass to produce a singleton.
Doing a singleton mixin without a metaclass (via __new__) is
annoying because the user has to name his __init__ something else
(otherwise it's called every time, which undoes any changes).
Using this metaclass, the class's __init__ is called exactly once.
Because this is a metaclass, note that:
* "self" here is the class
* "__init__" is making the class (it's like the body of the
class definition).
* "__call__" is making an instance of the class (it's like
"__new__" in the class).
Definition at line 367 of file pool.py.