Refactor LPC1114 and LPC11C24 code

Since most of the code for LPC1114 and LPC11C24 is similar, refactor the
code structure to avoid duplication of the common code.
Fix RAM size for LPC11C24 in ARM/uARM linker command files
Merge remote-tracking branch 'github/master'
Merge pull request #78 from mconners/master

Added KL46Z support
Move objects.h to LPC11XX_11CXX common

Use #if DEVICE_CAN for can_s definition
Move README.md to LPC11XX_11CXX common
Move spi_pinmap.h to LPC11XX_11CXX common

Merge back into spi_api.c. P0_10/SPI_0 (SWCLK) now disabled for both targets
Move adc_pinmap.h to LPC11XX_11CXX common

Merge back into analog_api.c. P1_3/ADC0_4 (SWDIO) now disabled for both targets
Move pwmout_api.c/PeripheralNames.h to LPC11XX_11CXX common

Because CT32B1 (P1_1, P1_2 and P1_3) is used by us_ticker.c for wait and ticker function. Since wait/ticker is commonly used by mbed code and I decided CT32B1 of LPC11XX should only be used for this function, not for PwmOut.
P1_6 and P1_7 are used by UART (USBTX/USBRX) and I think they should not be assigned to other function.
Merge pull request #81 from jorisa/master

Merge common files between LPC11XX and LPC11CXX
Update: Merge branch 'master' into freedomKL46Z

Conflicts:
	workspace_tools/targets.py