"Hi Mike. Thanks for getting me started. I had a hard time understanding your setup, so I decided to do my own. The behavior is inspired by yours, but I decided to use software switches for the sake of simplicity.
I think its nice, have a look: