abstracted away low level SPCR storage

should support Xmega with the right core and modified SPI library

tested only on Uno so far, this is a preview for discussion purposes
output stream now redirectable

mainly done to support more platforms

default is still "Serial" so changes are backwards compatible, except
"displayFreeRam" became "getFreeRam"

Conflicts:
	Adafruit_CC3000.cpp
fixed things that prevented xmega compile
abstracted away a SPDR write

also some formatting changes, my text editor did an autoformat, oops
changed one displayFreeRam to getFreeRam
moved back displayFreeRam for back-compatibility

sorry!
added polling just in case falling edge is missed

tested with 250 KHz SPI clock, still responds like a champ

Conflicts:
	ccspi.cpp

TODO: add ARM and Teensy stuff