Some things I saw in the Python 2.2(+.1c1) release notes ... need
to check if these apply to us also:

 - The "pseudo-sequences" returned by os.stat(), os.fstat(),
   time.localtime() can now be pickled.

 - pickle.py, cPickle:  allow pickling instances of new-style
   classes with a custom metaclass.

 - In pickle and cPickle, instead of masking errors in load() by
   transforming them into SystemError, we let the original
   exception propagate out.  Also, implement support for
   __safe_for_unpickling__ in pickle, as it already was supported
   in cPickle.

- Although this is documented as not the proper way to do this, it'd
  be nice if possible to make these cases work, or give better error
  messages:

>> from gnosis.xml.pickle import XML_Pickler
>> from gnosis.xml.pickle.util import setParanoia
>> setParanoia(1)
>>
>> # the usual class...
>> class A(object):
>>     def __init__(self):
>>         self.data = 'some data'
>> a = A()
>>
>> # an empty class...
>> class B(object): pass
>> b = B()
>>
>> # an int object...
>> i = 1
>>
>> # and now the test code...
>> print '!!! the normal object pickle... (#0)'
>> print XML_Pickler(a).dumps()
>>
>> print '!!! the empty object pickle... (#1)'
>> print XML_Pickler(b).dumps()
>>
>> print '!!! the int object pickle... (#2)'
>> print XML_Pickler(i).dumps()

   (only #0 works now)

