MyTracks. It's a free Google app for Android only. It tracks where you've been, altitude and all the good stuff. I don't think it tells you where you are going, I have an iPhone. My mates with Android use MyTracks all the time and love it. It can be linked to your Google Maps account.
Aussie