Refactoring; trying to cut down on number of reads/writes required