Hide cursor during replay playback

Close #63
Factor out material file loader
Implement a material cache
Add material reloading (F7 in cheat mode)
Further flesh out shared render state identity
Implement configurable lights

The default parameters are still hardcoded. The config file is read on
F7 in cheat mode. It's meant for tweaking values, not permanent
configuration.
Add ambient lighting from scene lights
Adjust materials for new lighting