Add better seeded random function

Instead of using
`Math.seedrandom(seed)` which affects the global Math object, use

`var rand = Random(seed)` which returns a unique random object for you
to use. This does not affect the global random method or other instances
of random.