Integrating the ARCLib into the comm code

This branch will be used to integrate the ARCLib into the communication
system code so that the system will be able to communicate with other
systems, receive data from them and then transmit.
Added ARCLib to project

This is a code waypoint; the code compiles but probably doesn't run.
Added updated UART code to the project.

Integrated Jesse's updated UART code into the project and fixed all
errors so it compiles.
Finished the RX code integration

The code is integrated with the ARCLib and should be set-up to receive
packets, however we're having troubles with numerous interrupts firing
right when the code starts up.
Finished ARCLib integration and Tx/Rx code

The Comm system is now integrated as a member of the dev stack. It can
receive SPI data from the CDH board, transmit it wirelessly to another
Comm board and also receive data wirelessly. The transmit code isn't as
consistent as it should be but does work.
Merging code from personal computer to Github code.
Commit from my computer

This commit might overwrite some of the 255-byte code in the ARCLib
branch so might have to correct that.
Computer code merger

Trying to merge the code on my computer with the Github code.
Frakked up with this code and am trying to go back to the last
commit where I integrated the ARCLib code.

Revert "Computer code merger"

This reverts commit 1a3f3223250849491c404e45529bcbe5855c1e53.
Frakked up with this code and am trying to go back to the last
commit where I integrated the ARCLib code.

Revert "Commit from my computer"

This reverts commit a4b4ab4433b97d012bc3c6b52f93376e2fd24c30.
Frakked up with this code and am trying to go back to the last
commit where I integrated the ARCLib code.

Revert "Merging code from personal computer to Github code."

This reverts commit 9dde6bb55084cfdb6066407b3eec0b2b30c72c1b.
Working TX Code

Fixed the length byte to reflect the payload data EXLCUDING itself. This
solved the extra packet error I was having as well as the TX UNDERFLOW
error. In order to deal with the TX UNDERFLOW I built a check in the
code for that so in case it does happen at some point the program will
still be able to roll on.

Also, I have made the functionality more robust so the code can transmit
any number of bytes from 1 to 255. Previously the control flow would not
send any packet length < the TX threshold (currently set at 33).

The RX code still needs  work in order to have consistent functionality.
Rx Code Working

The receive code is now working receiving multiple packets of lengths
from one to 255 bytes. Every now and then it fails, but is much more
robust than the previous version. The next step is to try to break the
receive code and then analyze what is causing the glitches.