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
Merge pull request #710 from iabdalkader/assert

Fix assert_func warning/error
Add copysignf

* Fix #692
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'