Added some documentation. Changed data persistence structure. General naming changes. Updated tests appropriately.