Last night I attempted to write an Auto homing routine, but it seems there are more important things to look at first. The current branch of Marlin that I am on at the moment seem to have lost the ability to check the endstops.
I looked into it briefly, but after comparing my branch with original Marlin, I see that it is time to consolidate some changes. I will have to fork Marlin itself and import the kinematics into it in such a way as to have it functional on cartesian systems as well. This is the only hope we have to get it incorporated into Marlin properly.
So, my weekend project awaits…