I picked up a Garmin Fenix 3HR and I must admit it works very well. It's available for less $$ now that the 5 is out. I chose the 3 because of the battery life.
You can easily upload to ridewithgps from it, as well as strava and garmin connect.
I have only played around with navigation but will do more with that in the future.
One nice thing you can do is set a timer. I set one when in bike mode to remind me to drink every 15 minutes.