Remember user settings across sessions

most user settings (language, blocks zoom, long form input, clicking
sound, design preference) are now made persistent in localStorage, so
if the user closes and re-opens Snap! the settings stay the same
Simplified the web page
Restore user settings fix for localization
prevent undesired HTML5 dragstart event

(a new glitch introduced in Chrome 27)
Objects: fix for hiding 'getLastAnswer' and 'getTimer' primitives
BYOB: Newly created custom reporters now have an initial default REPORT block as definition body
Morphic: focus World canvas on mouse down (otherwise prevent default)
Code mapping

generating text code from blocks, first experimental iteration
Store: persisting code mappings

in project and block library files
GUI: make code mapping preference persistent
"flat" design enhancements for blocks and watchers
"flat" design enhancements for cells
Blocks: Multi-line input slots (TextSlotMorphs - %mlt)
Objects: doMapCode() primitive now uses a multi-line input slot
"flat" design: No rounded corners for watchers
Morphic, Blocks: "flat" design fix

Handle manually "unshadowed" StringMorphs without throwing an
exception. This lets you load the tools library into "flat" mode again.
%code input slot

multi-line, monospaced, type-in slot for code mappings
code mapping: pass on c-slot clode by default
code mapping: pretty printing support (work-in-progress)

commented out for now, not yet functional
pretty printing support for mapped code

better formatting capabilites now support Python mappings