I just mentioned global variables as a way to help the OP with his 3rd problem. Honestly I use global variables for the same purpose, to minimize my overall code. The security issue doesn't really concern me as most players just play the game, not hack it. As long as the game isn't multi-player it doesn't matter.
What does matter is lowering the amount of code you use to make your life easier. In that reguard global variables can definitely help.