BUGFIX: read(buff,n) was not uisng offset in buffer, hence interleaving
read() with read(buf,n) calls would return the wrong data!
Merge branch 'xCP_read_fix' into spark_master_new