standardize callback format (to allow arrays for any of the callbacks), and pass group into the pre_group_callback