add GHC.Utils.Binary.foldGet' and use for Iface.Binary
Another small optimization that removes some lazy IO and strictifies an accumulator. We could go further and specialize foldGet but I chose not to because it would couple modules together. So the right way would be to make a custom foldGet just for its call site in Iface.Binary, which I've opted to try later.
Note that I left the lazy, non-inlined version of foldGet alone. I have no qualms removing it if we deem this function should always be strict and inlined.