Changed code to add timeout reset function to delegates before user success/failure functions, hopefully preventing a laggy user function from triggering timeout erroneously.