add comments to kuhl-util, add shuffle function, other cleanup