sqlite3: Reliably detect data query vs modification SQL statements.
sqlite3: Implement cursor.lastrowid .
io: As MicroPython builtin module is now _io, add dummy io wrapper.
sqlite3: Add metadata.
tarfile: Add dummy module.
zipfile: Add dummy module.
timeit: Add dummy module.
getpass: Add dummy module.
ipaddress: Add dummy module.
optparse: Add dummy module.
pty: Add dummy module.
reprlib: Add dummy module.
sched: Add dummy module.
mimetypes: Add dummy module.
mailbox: Add dummy module.
make_metadata.py: Allow to override dist_name in metadata.txt.
_libc: Helper FFI module to find and load proper libc for the system.

It's needed because different LIBC implementation use different shared
library names, so this module abstracts operation of finding the correct
one.

Default search order:

1. libc.so. This is usually doesn't exist, but user can create such symlink,
and it will be used fast.
2. libc.so.0, as used by current uClibc versions.
3. libc.so.6, as used by current Glibc versions.

uClibc is tried first because system where it is used are usually
underpowered to do array of attempts.

User can also override default search names by calling _libc.set_names(),
(which should be called before importing any other modules).
os: Depend on _libc.
fcntl: Depend on _libc.
select: Depend on _libc.