remove old rng code

the new boost mt rng returns full 32 bits of random so we don't need to
call it twice anymore if we need more than 15 bits of random.
fix compile error

msvc didn't have a problem with the previous code.
refactor commit 3f3687388f7ee528931de15a25a0b5acb4697561
fixup HEAD^