parse: Refactor parse node encoding to support full range of small ints.

Based on suggestion by @dpgeorge at
https://github.com/micropython/micropython/pull/313
Merge pull request #314 from pfalcon/parse-node-refactor

parse: Refactor parse node encoding to support full range of small ints.
py: Fix casting and printing of small int.
py: Rename strtonum to mp_strtonum.

strtonum clashes with BSD function of same name, and our version is
different so warrants a unique name.  Addresses Issue #305.