Fix up cancel and timer a bit
Add arguments checking to `then` callback
Add args checking to Void and RemotePromises `then` and check for double

send in Requests.