[SPARK-2936] Migrate Netty network module from Java to Scala

The Netty network module was originally written when Scala 2.9.x had a bug that prevents a pure Scala implementation, and a subset of the files were done in Java. We have since upgraded to Scala 2.10, and can migrate all Java files now to Scala.

https://github.com/netty/netty/issues/781

https://github.com/mesos/spark/pull/522

I think having a connectTimeout is pretty useful ? I often notice connect timeouts on EC2 and this is not configurable in the default shuffle implementation (that is partly because we use NIO with SocketChannels etc.)