Export unsafeRestoreM from the Unsafe module
Clearer type signatures (especially of 'dup')