Fix timeouts

This is a fix for issue #142 

Basically using the polyfill function ensures that request.timedout is set to true before onreadystatechange is called (this is not guaranteed with ontimeout).
Yeah, if you can create an xhr.test file, it would be great :smile_cat: