This code is my first attempt at writing solidity and is probably not as gas efficient as it could be. Creating this meta issue to track gas inefficiencies as I discover them.