I don't think I've ever had the wheel/cadance thing work for an entire ride. partly because I usually forget to adjust it before I leave, but when I do I always manage to knock it around enough to stop working. maybe I have an odd chainstay on my epic but it JUST barely will work when adjusted all the way out, and it has to be mounted tilted towards the cranks to pick that up.
And Norm is probably right about the open source thing, but the big 3 in the picture get pieces working correctly, but nothing will do all.
Garmin can do history fine, has topo and street maps.
Google can create routes great using sat images and supports image overlays for tracing out trail maps, but it's a hassle to get the gps file into the unit.
Microsoft is the only easy to use GPS while driving device, which is mandatory for my rally outings. But you have to use streets and trips, which has no topo or sat images. google earth can do real time gps, but since google earth exists only online, it doens't really work while driving now does it?
I have some hacking to do and I think I can get the garmin mapsource one to track real time, but that program is horrific at dealing with driving directions and finding places. But it has topo maps locally on your pc.
Whats missing from all 3 is the ability to add a trail network onto the base map. You can overlay a map, but it's got to be all one single line which is fine for the race loop, but if you want to add the side trails so you have a trail map, you are screwed. I've been doing it but you have to really carefully backtrack over your trail lines and add the whole damn network in one line. Can't add text like trail names to it either.