docs: git -Sm doesn't work, suggest using git -S -m instead.
emacs: add flags for ac-complete-clang
Add some padding for future use to the codec funcs structure.
Stay out of __ namespace.
Use enumerations in API.

C99 says enum has to be big enough for an int, so ABI should not be an
issue, and this simplifies things for doxygen and allows for better
static analysis.