Added another helper class to fix the bug that saved script user data (especially ScriptDelayExecution object) doesn't work after reset+load since the C++ objects are recreated.
NOTE: non-POD types in save/load of delayed execution object still doesn't work (e.g. closure) !!!