This patch series adds a ui.formatted() function, documents it as well as its sibling functions, and uses it. This time, the series is against the default branch. AFAICT we won't be doing another 1.5 release anyway...