Allow qstr's with non-ident chars, construct good identifier for them.

Also, add qstr's for string appearing in unix REPL loop, gross effect
being less allocations for each command run.
Update conwaylife.py

Import statements have been moved to the top of the file.
Add support for freeing code emitter objects at the end of compilation.
Rework makefiles. Add proper dependency checking.
Add basic implementation of bytes type, piggybacking on str.

This reuses as much str implementation as possible, from this we
can make them more separate as needed.
Merge pull request #215 from pfalcon/qstr-special-chars

Allow qstr's with non-ident chars, construct good identifier for them.
Retain file order of qstr definitions.

Want common qstrs to be first in the list so they have the lowest ids,
so that in the byte code they take up the least room.
Merge pull request #216 from ugurthemaster/patch-1

Update conwaylife.py
Small edits to examples to get them working again with unix/micropython.
Merge pull request #217 from pfalcon/free-emitter

Add support for freeing code emitter objects at the end of compilation.
py: Improve freeing of emitters in mp_compile.

There can be multiple emitters allocated during compile (eg byte code
and native).
Merge pull request #218 from iabdalkader/master

Move file obj to separate module
Revert "Move gc_collect to py/gc.c"

This reverts commit a215b09c0dc29b82161092e92ea2e5e004d79468.
Merge pull request #219 from dhylands/add-deps

Rework makefiles. Add proper dependency checking.
Merge pull request #221 from pfalcon/basic-bytes

Add basic implementation of bytes type, piggybacking on str.
Add mp_map_deinit() & mp_map_free() to finalize maps.

mp_map_deinit() finalizes static map, mp_map_free() - dynamic.
rt_deinit(): Finalize some maps.
Add parse_node_free_struct() and use it to free parse tree after compilation.

TODO: Check lexer/parse/compile error path for leaks too.
py: Implement iterator support for object that has __getitem__.

Addresses Issue #203.
Merge branch 'master' of github.com:micropython/micropython