Major change - n dimensions is too general. Lets start with 3 dimensions.
Cluster generation function complete