Add the "peek" method to ThriftTransport, ported from the C++ library.
Add a custom "peek" implementation to ThriftSocket, ported from the C++ library.
Check whether another message is available to be read before trying to read one (so the server doesn't hang).