Backup and restore the current tone in add_mark_to_char()
Externalize the trans_list in process_string()
Fix a test
Add result of a hackathon

This commit is a live collaboration between @lewtds, @cmptig and @hainp.