FakeSocket return empty string `""` when in stream is empty

This is more congruent with how a TCP socket behaves if there is
nothing to be read. It will return an empty string, so the fake
socket should do the same.