FlxRandom: allow creating instances

Per @joonjoonjoon's request, this allows developers to create an instance of `FlxRandom` with its own seed and determinism. Basically `FlxRandom` now uses a singular `FlxRandomInstance` internally, and all of the `FlxRandom` logic moved into `FlxRandomInstance`.
Also not sure if "instanced" is really the appropriate term here.... They're member / non-static functions in my mind.