Personally, I use ViperOne.
[ROM] ViperOneM8 4.3.0 Tweaks, HUB, IconPa… | HTC One (M8) | XDA Forums
It works exceedingly well. I've been using ViperOne on and off since October. I switched to some Lollipop ROMs before Viper released their Lollipop ROM but came back to ViperOne. The battery life is fantastic. I never let my battery go below 50%, and I've never had to charge it during the day to keep it above 50% during a full day. I'm away from home for 15 hours and without any power saving turned on or anything else, I've been able to go a 15 hour day without charging and have over 50% left.
If you're buying a used device, especially one without a warranty, and you'd like to play with custom ROMs, I highly recommend using Sunshine to go S-OFF. It *does* cost $25, but the process works and it works fast. It will unlock your device to allow you full control of everything. After that, you just install a custom recovery (TWRP (TeamWin Recovery Project) works very well and I use it myself) which allows you to go install the ROMs.
ROMs typically come as a .zip file, which you just put on the SD card (I don't recommend using internal storage) and install from recovery. The process is quick. From full-wipe to setting up Android could be 10-15 minutes, and the longest part is just Android getting ready for your apps. From there you set up the device as normal and you're done.
I like the ROMs that are based on HTC software more than ones that are based on the Google Play Edition (GPE). In my experience, the HTC/Sense-based ROMs have better battery life. The CyanogenMod ROM and all ROMs based on it are GPE as far as I know, so I personally don't like them but you should find one that you like. Maybe try a few different ones for a while and see what you like best.