I have the HTC One and to be honest, I don't like it that much. I'm an Android guy for life, but this phone has been a disappointment after all the high praises the critics have been heaping on it gave me high hopes. The version of android packed into the HTC One, Sense, is awful IMO. Everything that comes pre-loaded on it feels like it is all gimmick at the cost of usability. I would have just gone to stock with root access, but my brother did the same and after a while, his got bricked (not that it's hard to restore it, it's just a pain to do so, especially with the limited time a lot of people have). Also, having a battery that is damn near impossible to replace is a con. Though I will say it does have a very sexy build and feels like a premium phone plus the FM-radio is a nice addon (I used it for local talk shows and sportscasts back when I was in Dallas).
I'd go with the Nexus 5 or the Moto X. The HTC One with stock android would be OK I guess, but I think you would be better off with one of those two, preferably the Nexus 5.