Prevent creating a global variable with the same name as a local one

This also adds a dialog box explaining why the variable could not be created.
Fix feedback when adding a sprite var which already exists globally
Add feedback for adding an existing list; prevent vars/lists with the same name
hasVarName -> hasName
Prevent shadowing by renaming
Merged Nathan's variable name change fixes.
Merge pull request #520 from LLK/nathan-prevent-var-shadowing

Nathan prevent var shadowing