Added error handling to RunGame function because it takes in raw pointers. Shouldn't come up in normal use, but just in case, it's there.