Rename RandomGen to Generator and use a record instead of an ADT, simplifying the API

The goal here is to start using clearer names for parts of this API and make it more Elm-ish. I had trouble understanding the API at first, so I tried to go for names that clarified things for me (and hopefully others unfamiliar with random number generators).

General direction: I'd like to do a PR later on to move the module to Random/Generator.elm so that it'll live nicely with the existing Random library and have a clearer name in general. I also want to work on the names stdGen and mkStdGen, but I need to think more about what would be nice there.