Seems to me that if you tracked RPM's for a motor, you could create an interface for each wheel in an all wheel drive or multiwheel drive that uses separate motors. Combine that with tracking your steering angle so you can calculate the various turning radii's for each wheel. Then have them all maintain tracking by making sure that the relationship of rpm speed to each motor is appropriate. If one wheel is over revving compared to the others you have the cut down the current.
Only thing I am unsure of is how you establish your baseline rpm speed. Perhaps determine which wheel requires the most current compared to RPM's which suggest that wheel had traction.
Have fun with all that coding
If it was something you are interested in trying, I could work on establishing all the logic and math involved so that it could be coded more easily. I do have a small amount of C++ background so I could attempt to lay out the logic in a similar format.