This might be useful for simple autonomus, but others can get quite complicated. I wrote a extension of CommadGroup that allows me to specify firing and cancelling of commands and it makes it alot easier. I just input the variables as SmartDashboard, modified untill good, than finalized. An example would be my five-disc auton which you can find here.
https://github.com/1684Chimeras/2013...DiscAuton.java
Note that command-based code wasn't used at competition due to internal conflicts, but it all worked great and was quick and easy to develop. Also, alot of the classes used were basically being rushed in the middle of build season so theres alot that has been improved. (The way we did auton before (and still do untill 2014) is through a gigantic switch loop which didn't work untill our third competition and was hard as all hell to debug. Linked code worked on first deploy)