Converted setInterval to setTimeout
Switch to using RAF instead of setTimeout
Decouple frameNumber changes from frame rate