I have some grand ideas about a good web-based package that could handle a lot of the different parts; I have a significant chunk of the map-walking part written, but mothballed.
There are a number of specialized softwares that do it. Most are windows-only, half of the suck and the other half is barely acceptable. I never liked any of them very much.