Moved requestAnimationFrame-driven render loop updating logic to ui.base