wip cc3000 hal. refactored most of wiring layer (tcp,udp,wifi,wlan). Checking in to pull latest changes from rest of team - my work is moving into parts of hw_config, which may have changed.
Merge branch 'feature/hal' of https://github.com/spark/core-firmware into feature/hal

Conflicts:
	wiring/inc/main.h
	wiring/src/spark_wiring.cpp
system health factored from hw_config into hal. Made sst24vf_spi more hardware neutral (thinking this could be a abstract interface later, but see that we will most likely go with a MemoryDevice ADT.) Removed some dependencies on platform from wiring.
Getting this to link is running down a rabbit hole, so checking in now and will address linker issues separately.
This is WIP on the wlan, sockets, watchdoc HAL

Merge branch 'feature/hal' of https://github.com/spark/core-firmware into feature/hal

Conflicts:
	common/SPARK_Hal/inc/core_hal.h
	wiring/src/spark_wlan.cpp
Merge branch 'feature/hal' of https://github.com/spark/core-firmware into feature/hal

Conflicts:
	common/SPARK_Hal/inc/usart_hal.h
	common/SPARK_Hal/src/build.mk
	common/SPARK_Hal/src/usart_hal.c
	common/SPARK_Platform/MCU/STM32F1xx/SPARK_Firmware_Driver/src/stm32_it.c
	wiring/inc/spark_wlan.h
	wiring/src/main.cpp
	wiring/src/spark_wlan.cpp
fixes to get usbserial to link  (C/C++ linkage is important - C++ linkage becasue fns were still declared in spark_wiring_usbserial.h)
made panic platform neutral (can be moved out to spark services later.) Fixup missing functions in sockets/wlan.  Factored delay functions from hw_config to delay_hal.  Added enable/disable all IRQs to interrupts_hal.