Start of main menu and UI

Added a basic main menu, custom cursor, button support, and input
detection for the mouse. Loading screen now has a progress bar and
Math.TAU is used instead of Math.PI * 2.