Implement Diceware Passphrase Generator

Note: This is a first swing. I do not have the hardware necessary to test it properly at the moment.

Fixes #163 
This is looking good. One last nit: This will retry far more times than is strictly necessary, because most values will be outside the range.

Probably the most rigorous and general way to do this would be to determine the number of bits you need (ceil(log2(range))), and mask off just that many bits. Then the rval is much more likely to be in the range you need, so you retry less often.

The Stack Overflow function you started with solved the same problem a different way, by checking if the rval was above the largest whole-number multiple of range, and retrying only if that was the case. Either way works fine.

Once we're done, you should post a more generalized function to that Stack Overflow thread, I think it would be quite useful.