windows: Enable GC and implement bss start and end symbols

The pointers to the bss section are acquired in init.c()
by inspecting the PE header. Works for msvc and mingw.
gc: Use simple cast instead of union to silence compiler
py: Implement delete_attr in native emitter.
Merge pull request #690 from stinos/msvc-gc

msvc: Enable GC
Merge branch 'master' of github.com:micropython/micropython
modgc: Add mem_free()/mem_alloc() methods.

Return free/allocated memory on GC heap.
modstruct: Fix alignment handling issues.

Also, factor out mp_binary_get_int() function.
py: Add portable framework to query/check C stack usage.

Such mechanism is important to get stable Python functioning, because Python
function calling is handled with C stack. The idea is to sprinkle
STACK_CHECK() calls in places where there can be C recursion.

TODO: Add more STACK_CHECK()'s.
stmhal: Use stackctrl framework.