transaction.abort() loses _py_type information on nested objects

The patch fixes transaction.abort() behaviour for complex objects. _py_type information is not lost after transaction abort().