The KML files are just the container. If they are just waypoints/tracks, then convert them to gpx like suggested. I use GPSBabel but there's a few different tools out there.
There is a plethora of gpx file editing software out there - I have had OKMap amongst others for a few years now, but another option is to download Garmin's Basecamp.
http://www.garmin.com/en-AU/shop/downloads/basecamp. You can use an OSM map like Andrew's from viewtopic.php?f=21&t=14234&start=150#p268841 as the background map, and do your GPX editing there. With Garmin's Basecamp and an OSM topo map, you can display your tracks over a topo map fully offline.
CasualNerd wrote:gpsvisualizer.com has an online converter and a bunch of online viewing options which are also great.
I like GPSVisualizer. There is another web based gps visualiser that uses your gpx tracks from your own PC without the need for uploading the file -
http://www.mygpsfiles.com/app/ Mygpsfiles also let you do some gpx file creation/editing. You can upload various gpx files together and just use the browser interface to show/hide them on the map.
For Android, I have a few different apps, but have been using Oruxmaps since late last year, and have been pretty pleased with it.
viewtopic.php?f=21&t=22380