Read hdfs file manually instead of using numpy.load

This is to avoid type errors in the length argument (C++ requires the exact type whereas Python auto-converts numpy types to int as required)