new processing method

uses method call to get data address that way it abstracts dealing with
the actual source of the commands. also added a micro-second wait
ready for testing

cleaned up existing routines and exit for new processing method
documentation

added doc comments as well as implemented a few more macros and
calculated the stack address before any opcode processing
began code for communication
SPI code and got rid of buffer lock

no need to lock buffer, because only 1 cog ever writes to the buffer. So
we dont need protection
Merge pull request #1 from snyderdan/macro-processing

Macro processing