Fix issue#1

	- the pyOCD gdb server fix for not ignoring gaps betweens sections.
	  Tested with KL25Z with mbed.
watermark initialization
Flash protection bit check

	- if they have unexpected value, don't execute programPage = error
Use breakpoint to capture hardfault
Unescaped data in flashData, security check flashprogram

	- correction based on Samuel feedback
gdbserver - debug code removal
gdbserver - spaces returned as they were
flash securityBits check in flash.py, each target can overload it
debug bin file revert to the previous path
Initial hidapi implementation.

- Implemented hidapi interface backend for Mac OS X. Requires
  cython-hidapi Python package.
- Fails to connect to KL25 with a “SWD Fault” error.
Added tags files to .gitignore.
Fix issue with arguments in self security check method
Added K64, K20, KL05, and KL46 support.

- Created a parent target.Kinetis class that contains the shared
  unlock sequence.
- Refactored mass erase operation into new massErase() method in
  target.Kinetis.
- Added createSecurity() method on target.Kinetis, called from init().
- Slightly changed mass erase and added check if mass erase is even
  enabled before trying it.
- target.Kinetis subclasses set a mdm_idr attribute to the expected
  MDM-AP IDR register value, checked in target.Kinetis.init().
- Added K64 test binary to blink LED.
- Added K64 support to basic_test.py.
- Fixed flash.Flash.flashBinary() by using the actual flash page size
  instead of a fixed size of 1024.
- Added entry point value for sector erase function to flash_algo dicts
  for Kinetis devices. Not yet used.
Fixed misspelling in GDBServer.
Made classes derive from object.
Added subpackage imports to pyOCD.__init__.
Added shorthand read/write32/16/8 methods to CortexM target.
Fixed misspelling in basic_test.py.
New Cortex-M4 features in CortexM class.

- Support for reading and writing all available registers, including
  MSP, PSP, CONTROL, PRIMASK, etc, and FPU registers.
- New readCoreType() method on CortexM that reads the CPUID register
  and determines the Cortex-M core type (M0, M3, M4, etc.) and
  architecture (ARMv6M or ARMv7M).
- New checkForFPU() method that determines whether the FPU coprocessor
  extension is available on a Cortex-M4 processor.
- setupFPB() now also gets the number of literal comparators, but no
  actual support for those has been added.
- Fixed bitmask for C_SNAPSTALL bit in DHCSR.
- Kinetis target class calls readCoreType() and checkForFPU() in its
  init() method.
- Kinetis.massErase() now verifies the erase was successful by making
  sure that security is disabled afterwards.
- Updated basic_test.py with tests for new features.
Doxygen documentation generation.

- Added Doxygen configuration file.
- Added Doxygen HTML output directory to .gitignore.