encapsulated all dataset functions into panel object