Detaching debugger on close.

Also, fixed a bug when assigning a new attribute to a dshared object: in
"l_done_literal_function()", assigning the new attribute 'cfun_literal'
was creating it in ASTNode's pythonic __dict__, not dshared's blessed
__dict__, so, a second run of the debugger (in a different process) was
breaking when evaluating literal funs, as an atempt to access this field
was raising an exception since the field was not in this processe's
__dict__ version of the object.

Thus, __setattr__() is also required when assigning attributes to a
dshared object.