Bump savestate version, add better error checking

 * Checks for errors during actual load and returns an error to the callback if needed.
 * Aborts loading in more failure cases (may prevent crash and show user message.)
 * Stores the git version in the file and logs a warning if different.
 * Improves error message to clarify failure is probably due to version difference.

-[Unknown]