Add in test of reduce
Array splitting code
Many many changes