Modifications to support using this in Shopify

1. Added the ability to record on all ports.

2. Always serialize the session, even if `close` isn't called on the sockets.

3. Modify the `TCPSocket` class directly, instead of relying on `TCPSocket.open` to be called. This means sockets opened with `TCPSocket.new` will also be recorded.

4. Apply the same logic to `OpenSSL::SSL::SSLSocket`, in addition to `TCPSocket`

5. Stub out both the `gets` and the `connect` methods.