Basic read/write refactoring going on