Added setTimeout pausing and rescheduling based on freeze and travel

I have some code that uses setTimeout that I use timekeeper to test with. I added handing of setTimeout functions based on freeze and travel. I also had to make some changes to travel() and freeze() in order for it to switch from one to the other without being reset (which would mess up the timeouts). I'd love to get this into the base library if you think it would be a good fit. Thanks for writing the base code, I use it extensively!

-Marcus