when you say "somersault, flip, cartwheel" a basic pedometer would not be able to detect these particular motions. however if you use a fast gyro/accelerometer you could then possibly build an lqe - linear quadratic estimator (Kalman Filter) so the arduino can calculate its heading and angular position. you could log these values at specified intervals to an sd card and then use an external application like Python to decipher the arduino's path and calculate number of the runners steps based on counting the numbers of peaks. one could also map the taken path using something like Blender/Python as well and do even fancier interpretation of the data.
S.L.A.M. (Simultaneous localization and mapping). very neat: