py: Try to autodetect machine endianness when not defined by port.
py: Make int.to_bytes work on big endian machine.

Partly addresses issue #856.
py: Make mp_binary_set_val work on big endian machine.
stmhal: Remove long-obsolete pybwlan.[ch] files from old CC3k driver.
py: Extra autodetect for little endianness using __LITTLE_ENDIAN__.
tests: Make run-tests-exp.sh skip tests that fail due to invalid decorator.

Should address issue #856.
tests: Force skip of LE test on non-LE arch; improve run-tests-exp.sh.
tests: Add missing "import sys".
tests: Skip ffi_float.py if module ffi is not available.
windows: mingw32 gcc doesn't define endianness macros, so just assume little.

Specifically, at least Ubuntu's i586-mingw32msvc-gcc doesn't supply
__LITTLE_ENDIAN__ and friends. And as it's safe enough to assume that
Windows is only little-endian, then it's defined unconditionally,
instead of duplicating detection logic in py/mpconfig.h (or adding
windows-specific defines to it).
travis: Install realpath, required for teensy build.
Allow real memory errors (from locked gc) to be reported with traceback.
Updating README.md to include the fact that the Unix build requires pkg-config to build the FFI module.
Make lexer fail gracefully when memory can't be allocated.
py: Add #if guard around gc-specific code.
Merge branch 'dhylands-memory-error'
Merge pull request #897 from tomvonclef/master

Updating README.md. The Unix build requires pkg-config for FFI.
Merge branch 'lexer-crash' of https://github.com/dhylands/micropython into dhylands-lexer-crash
py: Add further checks for failed malloc in lexer init functions.
Merge branch 'dhylands-lexer-crash'