Switch to a less general representation to simplify the API

I realized today that the previous API was trying to do the explicit
record passing style of typeclasses. This sort of made it clear to me
that the type system probably needs to be more expressive to do that
well.

This version just implements the StdGen Generator from Haskell's
System.Random but gets rid of a bunch of the additional features for
extending the API for other kinds of generators. I *think* some
language stuff needs to be improved before this can be extended nicely.