Have yet another rejig of the API
Support precomposing strings for all data-based writers