Description
A bunch of places assume that Read() calls on files return the full requested number of bytes. In fact, the comment on this method says that it returns "up to" the requested number of bytes. We should add a ReadFully method which guarantees the number of bytes requested come back, and use this everywhere.