ZENGINE: Load the state values before changing location
ZENGINE: Only allow save slots in the range [1, 20]

This is the range supported by the ZNem / ZGI save menus
ZENGINE: Clear out the current state table values before loading any from a save file
ZENGINE: Directly access _globalState instead of using setStateValue

setStateValue does a _referenceTable lookup and potentially adds Puzzles
to _puzzlesToCheck. We know that _referenceTable and _puzzlesToCheck
with be cleared during ScriptManager::changeLocation(), so using
setStateValues ends up just being wasteful.
ZENGINE: Add documentation to SaveManager