Refactored timing and random to sync across screens

All timing must be frame based and all randoms should come from a seeded rand member using the "next<T>" functions.