Just a nitpick- It would be nice if all the argument orders for these functions matched. For example, here you have `ocXStart, ocYStart, ocZStart, voxelization, blocks`, while below you have `ocXStart, ocYStart, ocZStart, blocks, neighbourComp, voxelization` (blocks and voxelization switched order), and below that you have `manager, blocks, ccArr, ocArr, compZ` (blocks and oc switched order).