abandoned card struct to reduce memory foot print, afraid my blow the stack consuming so much sram before the program even starts. previously was raound 112 bytes of sram, now is around 50 bytes.
merged master.