Allow Gem.read_binary for read-only files

An lock cannot be obtained for a read-only file, so retry without
read-write or a lock on EACCES.  This allows read-only file://
repositories to work again.

Bug #761