The best for sleep with minimal hangover (for me) is Xanax. Of course, then you are playing with all the addiction potential, etc., of benzos.
You always get addicted to the sleep inducing effects of any sleep aid. Xanax is chancing getting addicted to the high as well. Still, I used to always have a Xanax or two around for "nights before a big, important, day".
Benadryl works well, but for one night in a row. The drowsiness, both the night of and the next morning, can be a pleasant thing if you are taking the sleep aid due to stress.
Since you can't get Xanax easily anymore, I usually rely on the Z drugs for sleep aids. It's hard to use them recreationally, which is a good thing in a sleep aid TBH.
Ambian has always caused me to wake up, wide awake, a few hours after taking it. I think most of the "sleep driving/eating/etc. stuff happens on Ambian. IMO, since it doesn't keep you down, the sleep walking happens. Also, people likely take more and a cycle of half asleep ensues
Lunesta works well, but has the next day grogginess.
I am actually quite the asshole for a few hours the morning after Lunesta and have to allow for that and make no important decisions or interactions in that time.