Centralize select system call
Allow nil timeouts
Test for #345
Merge pull request #346 from MagLev/johnnyt/github345

Cleanup Kernel.select