Scratch work

some initial work to try and work out a mobility algorithm.