Fun fact: these files used to be called log.[ch] until we ran into conflicts with systems having a log.h file. But now that we always include "lib/log/log.h", we should be fine.
Also, move "unescape_string()" to encoding too, since it's about encoding data as C strings.