First commit based off of the CAN demo code