Updated teensy to build.

Refactored some stmhal files which are shared with teensy.
Added hexfile target
Fix asser_func warning/error

* Add while(1) to assert_func to avoid func returns warning
* Define a weak attr in mpconfig.h
Add NORETURN to __fatal_error
py: Improvements to native emitter.

Native emitter can now compile try/except blocks using nlr_push/nlr_pop.
It probably only works for 1 level of exception handling.  It doesn't
work on Thumb (only x64).

Native emitter can also handle some additional op codes.

With this patch, 198 tests now pass using "-X emit=native" option to
micropython.
Merge pull request #710 from iabdalkader/assert

Fix assert_func warning/error
Add copysignf

* Fix #692
Add timer_deinit and call it just before doing a soft-restart

This fixes #733.
modffi: Add special 'C' code for passing a callback function pointer.
stackctrl: Add "mp_" prefix.
Try not to cause a MemoryError when raising an exception during nterrupt handling.

Step 1 fixes #732
Merge pull request #734 from iabdalkader/copysign

Add copysignf
Merge branch 'preserve-except' of github.com:dhylands/micropython into dhylands-preserve-except
py, objexcept: Only check for locked gc if gc is enabled.
Merge branch 'dhylands-preserve-except'
Merge branch 'teensy-new' of github.com:dhylands/micropython into dhylands-teensy-new

Conflicts:
	stmhal/pin_named_pins.c
	stmhal/readline.c

Renamed HAL_H to MICROPY_HAL_H.  Made stmhal/mphal.h which intends to
define the generic Micro Python HAL, which in stmhal sits above the ST
HAL.
Merge branch 'dhylands-teensy-new'
Merge pull request #709 from windelbouwman/master

Added hexfile target
Merge branch 'add-timer-deinit' of github.com:dhylands/micropython into dhylands-add-timer-deinit
stmhal: Some reordering of code/functions.