Provides methods for organizing data in a hypercube (i.e. a multi-dimensional cube). Cubes are generated from molten data frames. Each cube can be manipulated with five operations: rotation (changeDimensionOrder()), dicing and slicing (add.selection(), remove.selection()), drilling down (add.aggregation()), and rolling up (remove.aggregation()).