afc::FastStringBuffer: a pointer to the end of the buffer is used instead of the size field, since the former leads to a better code produced by g++.
afc::toHex() uses value table, since it does not need any conditions.