Add Initial Support for STM32F4DISCOVERY Board

* Add a TARGET definition to Makefile (default PYBOARD).
* Add support for discovery LEDs in led module.
* Add support for discovery user switch in usersw
* Add EXTI interrupt handler for discovery user switch on (PA0).
* Parameterize led and usrsw modules pins and port.
* Issue #83
Add gitignore file
Make qstr_init reinitialize last_pool.

This causes the pool to get reinitialized properly on a soft-reset.
Convert many object types structs to use C99 tagged initializer syntax.
Fix off-by-one in non-default values of index's 2nd and 3rd arguments.
Merge remote-tracking branch 'upstream/master' into list_insert
Merge pull request #88 from dhylands/mp-qstr-init

Make qstr_init reinitialize last_pool.
Merge pull request #86 from iabdalkader/master

Add Initial Support for STM32F4DISCOVERY Board
stm: pull-up usr switch on pyboard (fixes regression).
Merge pull request #89 from pfalcon/c99-tagged-structs

Convert many object types structs to use C99 tagged initializer syntax.
Merge pull request #91 from chipaca/list_index

Fix off-by-one in non-default values of index's 2nd and 3rd arguments.
Merge pull request #92 from chipaca/list_insert

List insert. Fixes issue #61.
Merge remote-tracking branch 'upstream/master' into list_remove