closes #6 (add custom string formatting function interface)