Socket::select()

This pull request is the first step towards removing the hard dependencies on `ext/sockets` for creating standalone servers: PHP's stream API has had [an equivalent functionality](http://de3.php.net/manual/de/function.stream-socket-server.php) for quite a while now.

* [x] We'll start by abstracting the `select()` call into the two existing implementations, `peer.Socket` and `peer.BSDSocket`, and changing the `peer.server` implementations to use that.