After axing half of wrap-region.el I renamed it to tagify.el and improved it ever so slightly. It's leaner, and does more!
tagify-region-or-insert-tag does the same thing as
wrap-region-with-tag except if there is no region it now inserts the opening and closing tags and sets point in between them. I have this bound to
C-z t, as I use
C-z as my personal command prefix.
< is bound to
tagify-region-or-insert-self which really doesn't warrant an explanation.