Rebase3

since we last spoke...

* jshint is happier (it found a few more orphaned functions)
* I exposed the character range
* I set the default character range to printable ascii (which exposed that ret bug)
* I exposed a way to override the random number generator
* I wrote tests for the character range and the PRNG

things that are probably wrong (but might be right):
* setting the default character range to printable ascii
* putting `defaultRange` and `randInt` on the class rather than the instance

I put the state of the first PR (and some cleanup) in one commit, and the defaultRange and randInt things in the other.  They're really probably 2 PRs but it seemed like there was similar functionality that got stepped on by the first PR.  It seemed like a shame to leave it crippled without any way of controlling the character range
I was a flash developer for a long time and that's pretty idiomatic there.  I was using it here because the the initial way I did it was with a private var named `randInt` that was changed with a setter.  the function `_randInt` was the initial value of `randInt` so it mattered...  Now the var is `RandExp.randInt` so it doesn't matter
(removing all underscores)