more cube/dataset seperation
replace functions with call to self.cube
pass flush through to cube