This patch allows esp8266 to use @micropython.native and
@micropython.viper function decorators. By default the executable machine
code is written to the space at the end of the iram1 region. The user can
call esp.set_native_code_location() to make the code go to flash instead.
The 512k build recently overflowed because of the newly-enabled uselect
module. uselect is arguable more important than framebuf for small
devices so we disable framebuf to keep the 512k build within its limit.
To build, "make 512k".
Disabled are FatFs support (no space for filesystem), Python functionality
related to files, btree module, and recently enabled features. With all
this, there's only one free FlashROM page.