Merge branch 'develop'
Merge branch 'develop'
Skip generated sources in function find_arduino_libraries
Merge pull request #59 from PIlin/generated_files_fix

Skip generated sources in function find_arduino_libraries
Adds a basic support to add external platforms

fixes #41

Adds a new functions register_hardware_platform(). This functions takes
a path to the hardware platform such as
${ARDUINO_SDK_PATH}/hardware/${PLATFORM} and creates the varibles:

${PLATFORM}_CORES_PATH if cores exists
${PLATFORM}_BOARDS_PATH if boards.txt exists
${PLATFORM}_BOARDS if boards.txt exists
${PLATFORM}_PROGRAMMERS_PATH if programmers exists
${PLATFORM}_VARIENTS if varients exists

${PLATFORM} is the uppercase of the last directory name and so is
compatable with the previous variable names (ie hardware/arduino will
create ARDUINO_CORES_PATHS...)

Removes the now unused load boards and programmers methods for the
arduino platforms as this is now handeled by the new function.

Adds some new varibles;
  PLATFORMS lists all the registered platforms.
  VARIANTS  lists all the registared variants.
  ${variant}.path the path of the pins header file for the variant this
    is now used instead as the include path rather then
    ${ARDUINO_VARIANTS_PATH}/${variant}

Modifies the print boards and programmers to list all the platform
boards and programmers.
Adds core support for different hardware platforms
Adds support for optional arguments

This has only been tested on the attiny84
Removes the debug statement
- Changed PLATFORMS to ARDIUNO_PLATFORMS, more consisten naming
- Fixed minor bug relating to generated sketches being ignored by find_arguino_library
Added documentation for register_hardware_platform(), removed debug output, fixed status message in generate_arduino_example()
Removed tabs from sources, only spaces are allowed!
Updated documentation for register_hardware_platform(), Added Michael Duffin aka james147 to Contributors List