I use an android 'phone (with built-in gps) and Runkeeper. For simplicity (start-stop) it take's some beating. The cost of the 'phone is quite an investment though.