Represents the shape of a tensor: the size of each axis, NA where a size
is only known at run time.
A Shape is its integer vector, with a class attached, so length() is
the rank and [ selects axes without unwrapping anything first.
Usage
Shape(dims = integer())