Make read and write system calls interruptible when GHC > 7.1

When managing a serial device I can't System.Timeout the whole process if it is blocked waiting for input. The solution is to use non blockign reads, select or sleep but having a higher level timeout is desirable.

Are there any known issues with this? 
How is the version number updated with a change like this one?

I tested it on Linux and OS X and works if compiled with -threaded