HyperTable

This is achieved by representing the data as an ordered list of Table objects, indexed by some coordinate that is defined as the "first" coordinate.

In a recursive fashion, the "second" coordinate is defined to be the first coordinate of the data inside the Table objects and similarly for the "third", "fourth" and so on coordinate.

In the simplest 3-dim case, the contained Table objects are all of 2 dimensions, i.e. of type Table2D.