Harden "Filesystem::readRandomInteger()" against misuse and builtin failure
Summary: See D19981. Make more of an effort to make sure that nothing unexpected-but-in-our-control can go awry here.
Test Plan: See unit tests.
Reviewers: amckinley
Reviewed By: amckinley
Differential Revision: https://secure.phabricator.com/D19985