Move to using `%` as an escape in format!

I believe that this is almost undeniably better because now to escape '{' it
looks like "%{" instead of "\\{". Furthermore, in order to insert a '\' you only
have to type "\\" (as one would expect), instead of "\\\\".

At the same time, this also attempts to improve some error messages about
expecting a character and not finding it.