Undelete messes up ownership and history

(Bug, Closed -> Fixed, Priority: Critical, Test Status: Unit tested , Reported By Bad Link: Thing 3y284oe not found, )
Summary: I believe the problem is that Undelete is implemented as "re-add". It needs to fix these fields as it does so.
From Eric:
I accidentally deleted the wrong Thing, and clicked "click here to undelete it".

The undelete appeared to hang (with an eventual message of "There was an internal error (code 504)! Sorry; it has been logged. If this persists, please tell us."), but did mostly work.

However, rather than restoring the Thing entirely, its _creator was changed to me, and its _createTime was changed to the time it was undeleted.