fix warnings about missing case (so annoying) !!
ensure data is aligned for vsnprint in serialize

before this fix I would sometimes get incorrect values in the jason
output ... basically I think vsnprint on some systems needs the source
to be aligned, but our buffer may not be ... so I just declare an
aligned variable on the stack and copy the data into that for printing
which seems to solve the problem
update fixes for pull request #31

updated based on d.newtons suggestions
fix bug de-serializing unaligned memory on some systems

(this is a follow on to pull request 31 on djnewtons branch)

on some systems casting unaligned memory (ie the data pointer) to
types like uint32's, float's etc results in nonsense values because
the memory is assumed to be aligned ... hence to solve this we
memcpy from an aligned buffer (value) to an unaligned buffer (data so
it works as raw byte moves, see below)

note this also simplifies the process_token routine a bit.
Merge pull request #31 from othane/master

nice things