Refactor read and write methods

Makes it easier to add new delegated methods.

Added #readbyte method.