Factored out the modules some more (cleaned out main.c, standardized naming a bit, basic encapsulation), added buttons and their respective functionality, added header protection #ifdefs, started moving to standardized types (uint8_t, etc)