maintain IO.read EOF behavior in Socket#read
maintain IO.read EOF behavior in Socket#read

When EOF is met at the beginning, it should return +nil+ if +max_length+
is given, or an empty string if +max_length+ is +nil+.

cloudfoundry-incubator/excon,ilackarms/excon,TheNeatCompany/excon,liftforward/excon,wadetandy/excon,hammerdr/excon,mahemoff/excon,excon/excon