Simplifying and extending the Read implementation.