byteBlock should be a class to allow it being a return type, reducing the need of C-style arguments (pointer to return location as argument).
[x] create byteBlock class that simply replaces the current array
[x] replace or add new functions with byteBlock as return type
[x] ~implement it to have index 0 as top row of a segment~ I think it is best to not change this, since it would break compatiblility with older version.
byteBlock should be a class to allow it being a return type, reducing the need of C-style arguments (pointer to return location as argument).