This was discussed in #706 It also uncovered some off-by-one issues with defining some constants. A few structs now use rsreset/_RS to define their offset constants, as discussed in #739
Some character codes were erroneously named after their text command counterparts. This has caused a lot of confusion with naming their functions and with other things. I've also removed the `dict2` macro and expanded the `dict` macro. This really isn't something we should be doing for macros but I can't deny it looks a lot neater than repeated code.