Replace Leonardo detection with Caterina detection

Checks bootloader.path for "caterina"
moved reset routines down past where we define CATERINA

my understanding of recursively expanded variables wasn't correct
Don't commit example build directories to git.
Add support for the Digilent chipKIT platform

This commit modifies a few things in Arduino.mk to be able to support
overriding the necessary configuration options to support the chipKIT build,
and also includes an example sketch configured to build for the Max32 platform.

In addition the following changes were done as well

- Control C standard with a CFLAGS_STD flag, GNU99 by default.
- Duplicate show_config_variable in each sub-makefile.
- Remove redundant output of ARDUINO_PREFERENCES_PATH from config table.
- Defer Priting ARDMK_DIR until Arduino.mk.
- Define names of compiler tools earlier to use for path checking.

Duplicating show_config_variable is unfortunate because the code is duplicated,
but I don't see a good way around it since we need to dupliacate the check
for ARDMK_DIR before we can find Common.mk.

Fix #98
Implement ard-parse-boards with shell scripting instead of Perl.

Working towards dropping the dependency on Perl (which very few Windows users
have), this commit implements the required functionality from ard-parse-boards
in a few shell commands from within the Makefile.

Fix #100
Compile with debugging symbols only when DEBUG=1.

Fix #101
Replace Leonardo detection with Caterina detection

Checks bootloader.path for "caterina", instead of checking only for
leonardo

Fix #96
Fix #97
Fix #102
Remove Perl YAML dependency from documentation.

YAML is no longer necessary in Perl since ard-parse-boards was implemented in the Makefile itself.