Tried out using hSeek and lazy bytestrings, but I'm having issues with trying to read from a closed handle.  I think the issue is that I set up the lazy bytestrings, and then they don't try to read from the handle until after I close it.  Might need hseek and strict bytestrings.
Fixed issue with trying to read from a closed handle.  Neede to add a  to strictly evaluate the runGet call in the body of withBinaryFile callback.  However, uses up 95 MB of ram to read a file.  Need to figure it out.