fakeable.py: Fakeable.__new__() was using the built-in "dict" function instead of the local "dict_" vraible
fakeable.py: Fakeable.__new__(): save the new type to a local variable before returning to allow easier inspection during debugging
fakeable.py: Fakeable.__call__(): create the new instance correctly by calling type.__call__() instead of just type()