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.
Made rectangle and ellipse tools consistently stay selected after creating a shape
Made text tool sticky
Changed library UI so sprites with empty names and costumes are still visible
Match protocol more closely for /poll in HTTP extensions
Fix updating size of scroll frames
Remove duplicate call to Translator.map in ui.parts.TabsPart
Remove duplicate call to Translator.map in Scratch
Remove duplicate call to Translator.map in ui.media.MediaLibrary
Fix translating menu items in sprite menus
Add missing strings() to Scratch
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
Allow dropping reporters on predicates in text/number slots
Bump version string to v423g
Include JSON in error report during JSON parse
Ensure all loadBytes calls handle IOErrorEvent
Merge tag 'v423g'

Conflicts:
	src/Scratch.as