emitbc: Correct buffer sizes for varlen int encoding.

Assuming we have truncating (floor) division, way to do ceiling division
by N is to use formula (x + (N-1)) / N. Specifically, 63 bits, if stored
7 bits per byte, require exactly 9 bytes. 64 bits overflow that and require
10 bytes.
__import__: Catch relative import attempts and throw NotImplementedError.
showbc: Update for recent int varlen storage refactor.

TODO: De-duplicate DECODE_UINT, etc. definitions.
parse: Note that fact that parser's small ints are different than VM small int.

Specifically, VM's small ints are 31 bit, while parser's only 28. There's already
MP_OBJ_FITS_SMALL_INT(), so, for clarity, rename MP_FIT_SMALL_INT() to
MP_PARSE_FITS_SMALL_INT().
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.
py: Put number parsing code together in parsenum.c.
Add basic super() test.
Add arbitrary precision integer support.

Some functionality is still missing (eg and, or, bit shift), and some
things are buggy (eg subtract).
Merge branch 'master' of github.com:micropython/micropython
Add Configurable LFN support to FatFS
Merge pull request #316 from iabdalkader/fatfs_lfn

Add Configurable LFN support to FatFS
stm: Add USART enum for pyboard skin labels.
stm: Make pendsv_nlr_jump work when debugging is enabled.

Stack layout is different when -g used, so need to handle the pendsv
jump differently.  Addresses Issue #315.
Add EXTI support

Revamp usrsw to use new exti code.
Add user switch callback function.
stm: Add option to pyb_usb_dev_init() to use USB HID interface.

With this option selected, only HID on its own works, not VCP+HID.
py: Fix mpn_sub, was increasing wrong source pointer.

Also change int -> machine_int_t where appropriate.
Fix floating point printing of negative numbers in the range (0, -1.0)