use signed char rather than plain char for int8_t

otherwise this BADLY breaks if -funsigned-char is passed to gcc
3 files changed