Initial HDFS Readers and Writers implementation.

Basic implementation of a writer and sequential and random readers that operate with streams on HDFS. These operate on Array[Byte] rather than specific kinds of data, so any data being sent in should already be in serialized form.
I did notice the issue, but was not sure whether to make the hasNext an expensive call where we read it (that is how it is usually done in C++ and Java I think). 

The iterator idea sounds good. I will do that.