Better read support.

@charleso This might help you. Should have done it earlier, but feel free to merge this when it won't be in your way.
Ha. Just deleted that on my branch.