diff --git a/src/containers/blocks.jsx b/src/containers/blocks.jsx
index d3cd98342e19ac57d514cac0f2df2cd053ff4f7c..9f7831e816a4d1dde15ea1e27a75e658d152f518 100644
--- a/src/containers/blocks.jsx
+++ b/src/containers/blocks.jsx
@@ -195,7 +195,7 @@ class Blocks extends React.Component {
         this.ScratchBlocks.defineBlocksWithJsonArray(blocksInfo.map(blockInfo => blockInfo.json));
         const dynamicBlocksXML = this.props.vm.runtime.getBlocksXML();
         const toolboxXML = makeToolboxXML(dynamicBlocksXML);
-        this.props.updateToolbox(toolboxXML);
+        this.props.sendToolboxUpdate(toolboxXML);
     }
     setBlocks (blocks) {
         this.blocks = blocks;
@@ -215,6 +215,8 @@ class Blocks extends React.Component {
             options, // eslint-disable-line no-unused-vars
             vm, // eslint-disable-line no-unused-vars
             isVisible, // eslint-disable-line no-unused-vars
+            toolboxXML, // eslint-disable-line no-unused-vars
+            sendToolboxUpdate, // eslint-disable-line no-unused-vars
             ...props
         } = this.props;
         return (
@@ -260,8 +262,8 @@ Blocks.propTypes = {
         }),
         comments: PropTypes.bool
     }),
+    sendToolboxUpdate: PropTypes.func,
     toolboxXML: PropTypes.string,
-    updateToolbox: PropTypes.func,
     vm: PropTypes.instanceOf(VM).isRequired
 };
 
@@ -301,7 +303,7 @@ const mapStateToProps = state => ({
 });
 
 const mapDispatchToProps = dispatch => ({
-    updateToolbox: toolboxXML => {
+    sendToolboxUpdate: toolboxXML => {
         dispatch(updateToolbox(toolboxXML));
     }
 });
diff --git a/src/containers/target-pane.jsx b/src/containers/target-pane.jsx
index b4bc8f5b4c310d826b49e393553db1253cf55d5a..7e87bac9af8543ed7fe9a37a743a3a065f6d658d 100644
--- a/src/containers/target-pane.jsx
+++ b/src/containers/target-pane.jsx
@@ -50,7 +50,6 @@ class TargetPane extends React.Component {
         this.props.vm.deleteSprite(id);
     }
     handleNewExtensionClick () {
-        /** @TODO: Replace this with `dispatch(openExtensionLibrary());` in `mapDispatchToProps` below */
         this.props.vm.extensionManager.loadExtensionURL('extensions/example-extension.js');
     }
     handleSelectSprite (id) {
diff --git a/src/lib/static-blocks.xml b/src/lib/static-blocks.xml
deleted file mode 100644
index 2081e5c8abe45b57741202dcfa079f1a3ea2e660..0000000000000000000000000000000000000000
--- a/src/lib/static-blocks.xml
+++ /dev/null
@@ -1,578 +0,0 @@
-<category name="Motion" colour="#4C97FF" secondaryColour="#3373CC">
-    <block type="motion_movesteps">
-        <value name="STEPS">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_turnright">
-        <value name="DEGREES">
-            <shadow type="math_number">
-                <field name="NUM">15</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_turnleft">
-        <value name="DEGREES">
-            <shadow type="math_number">
-                <field name="NUM">15</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_pointindirection">
-        <value name="DIRECTION">
-            <shadow type="math_angle">
-                <field name="NUM">90</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_pointtowards">
-        <value name="TOWARDS">
-            <shadow type="motion_pointtowards_menu">
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_gotoxy">
-        <value name="X">
-            <shadow type="math_number">
-                <field name="NUM">0</field>
-            </shadow>
-        </value>
-        <value name="Y">
-            <shadow type="math_number">
-                <field name="NUM">0</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_goto">
-        <value name="TO">
-            <shadow type="motion_goto_menu">
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_glidesecstoxy">
-        <value name="SECS">
-            <shadow type="math_number">
-                <field name="NUM">1</field>
-            </shadow>
-        </value>
-        <value name="X">
-            <shadow type="math_number">
-                <field name="NUM">0</field>
-            </shadow>
-        </value>
-        <value name="Y">
-            <shadow type="math_number">
-                <field name="NUM">0</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_changexby">
-        <value name="DX">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_setx">
-        <value name="X">
-            <shadow type="math_number">
-                <field name="NUM">0</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_changeyby">
-        <value name="DY">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_sety">
-        <value name="Y">
-            <shadow type="math_number">
-                <field name="NUM">0</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="motion_ifonedgebounce"/>
-    <block type="motion_setrotationstyle"/>
-    <block type="motion_xposition"/>
-    <block type="motion_yposition"/>
-    <block type="motion_direction"/>
-</category>
-<category name="Looks" colour="#9966FF" secondaryColour="#774DCB">
-    <block type="looks_show"/>
-    <block type="looks_hide"/>
-    <block type="looks_switchcostumeto">
-        <value name="COSTUME">
-            <shadow type="looks_costume"/>
-        </value>
-    </block>
-    <block type="looks_nextcostume"/>
-    <block type="looks_nextbackdrop"/>
-    <block type="looks_switchbackdropto">
-        <value name="BACKDROP">
-            <shadow type="looks_backdrops"/>
-        </value>
-    </block>
-    <block type="looks_switchbackdroptoandwait">
-        <value name="BACKDROP">
-            <shadow type="looks_backdrops"/>
-        </value>
-    </block>
-    <block type="looks_changeeffectby">
-        <value name="CHANGE">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="looks_seteffectto">
-        <value name="VALUE">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="looks_cleargraphiceffects"/>
-    <block type="looks_changesizeby">
-        <value name="CHANGE">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="looks_setsizeto">
-        <value name="SIZE">
-            <shadow type="math_number">
-                <field name="NUM">100</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="looks_gotofront"/>
-    <block type="looks_gobacklayers">
-        <value name="NUM">
-            <shadow type="math_integer">
-                <field name="NUM">1</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="looks_costumeorder"/>
-    <block type="looks_backdroporder"/>
-    <block type="looks_backdropname"/>
-    <block type="looks_size"/>
-</category>
-<category name="Sound" colour="#D65CD6" secondaryColour="#BD42BD">
-    <block type="sound_play">
-        <value name="SOUND_MENU">
-            <shadow type="sound_sounds_menu"/>
-        </value>
-    </block>
-    <block type="sound_playuntildone">
-        <value name="SOUND_MENU">
-            <shadow type="sound_sounds_menu"/>
-        </value>
-    </block>
-    <block type="sound_stopallsounds"/>
-    <block type="sound_playdrumforbeats">
-        <value name="DRUM">
-            <shadow type="sound_drums_menu"/>
-        </value>
-        <value name="BEATS">
-            <shadow type="math_number">
-                <field name="NUM">0.25</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_restforbeats">
-        <value name="BEATS">
-            <shadow type="math_number">
-                <field name="NUM">0.25</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_playnoteforbeats">
-        <value name="NOTE">
-            <shadow type="math_number">
-                <field name="NUM">60</field>
-            </shadow>
-        </value>
-        <value name="BEATS">
-            <shadow type="math_number">
-                <field name="NUM">0.5</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_setinstrumentto">
-        <value name="INSTRUMENT">
-            <shadow type="sound_instruments_menu"/>
-        </value>
-    </block>
-    <block type="sound_changeeffectby">
-        <value name="VALUE">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_seteffectto">
-        <value name="VALUE">
-            <shadow type="math_number">
-                <field name="NUM">100</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_cleareffects"/>
-    <block type="sound_changevolumeby">
-        <value name="VOLUME">
-            <shadow type="math_number">
-                <field name="NUM">-10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_setvolumeto">
-        <value name="VOLUME">
-            <shadow type="math_number">
-                <field name="NUM">100</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_volume"/>
-    <block type="sound_changetempoby">
-        <value name="TEMPO">
-            <shadow type="math_number">
-                <field name="NUM">20</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_settempotobpm">
-        <value name="TEMPO">
-            <shadow type="math_number">
-                <field name="NUM">60</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="sound_tempo"/>
-</category>
-<category name="Pen" colour="#00B295" secondaryColour="#0B8E69">
-    <block type="pen_clear"/>
-    <block type="pen_stamp"/>
-    <block type="pen_pendown"/>
-    <block type="pen_penup"/>
-    <block type="pen_setpencolortocolor">
-        <value name="COLOR">
-            <shadow type="colour_picker">
-            </shadow>
-        </value>
-    </block>
-    <block type="pen_changepencolorby">
-        <value name="COLOR">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="pen_setpencolortonum">
-        <value name="COLOR">
-            <shadow type="math_number">
-                <field name="NUM">0</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="pen_changepenshadeby">
-        <value name="SHADE">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="pen_setpenshadeto">
-        <value name="SHADE">
-            <shadow type="math_number">
-                <field name="NUM">50</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="pen_changepensizeby">
-        <value name="SIZE">
-            <shadow type="math_number">
-                <field name="NUM">1</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="pen_setpensizeto">
-        <value name="SIZE">
-            <shadow type="math_number">
-                <field name="NUM">1</field>
-            </shadow>
-        </value>
-    </block>
-</category>
-<category name="Events" colour="#FFD500" secondaryColour="#CC9900">
-    <block type="event_whenflagclicked"/>
-    <block type="event_whenkeypressed">
-    </block>
-    <block type="event_whenthisspriteclicked"/>
-    <block type="event_whenbackdropswitchesto">
-    </block>
-    <block type="event_whengreaterthan">
-        <value name="VALUE">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="event_whenbroadcastreceived">
-    </block>
-    <block type="event_broadcast">
-        <value name="BROADCAST_OPTION">
-            <shadow type="event_broadcast_menu"/>
-        </value>
-    </block>
-    <block type="event_broadcastandwait">
-        <value name="BROADCAST_OPTION">
-            <shadow type="event_broadcast_menu"/>
-        </value>
-    </block>
-</category>
-<category name="Control" colour="#FFAB19" secondaryColour="#CF8B17">
-    <block type="control_wait">
-        <value name="DURATION">
-            <shadow type="math_positive_number">
-                <field name="NUM">1</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="control_repeat">
-        <value name="TIMES">
-            <shadow type="math_whole_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="control_forever"/>
-    <block type="control_if"/>
-    <block type="control_if_else"/>
-    <block type="control_wait_until"/>
-    <block type="control_repeat_until"/>
-    <block type="control_stop"/>
-    <block type="control_start_as_clone"/>
-    <block type="control_create_clone_of">
-        <value name="CLONE_OPTION">
-            <shadow type="control_create_clone_of_menu"/>
-        </value>
-    </block>
-    <block type="control_delete_this_clone"/>
-</category>
-<category name="Sensing" colour="#4CBFE6" secondaryColour="#2E8EB8">
-    <block type="sensing_touchingobject">
-        <value name="TOUCHINGOBJECTMENU">
-            <shadow type="sensing_touchingobjectmenu"/>
-        </value>
-    </block>
-    <block type="sensing_touchingcolor">
-        <value name="COLOR">
-            <shadow type="colour_picker"/>
-        </value>
-    </block>
-    <block type="sensing_coloristouchingcolor">
-        <value name="COLOR">
-            <shadow type="colour_picker"/>
-        </value>
-        <value name="COLOR2">
-            <shadow type="colour_picker"/>
-        </value>
-    </block>
-    <block type="sensing_distanceto">
-        <value name="DISTANCETOMENU">
-            <shadow type="sensing_distancetomenu"/>
-        </value>
-    </block>
-    <block type="sensing_keypressed">
-        <value name="KEY_OPTION">
-            <shadow type="sensing_keyoptions"/>
-        </value>
-    </block>
-    <block type="sensing_mousedown"/>
-    <block type="sensing_mousex"/>
-    <block type="sensing_mousey"/>
-    <block type="sensing_loudness"/>
-    <block type="sensing_timer"/>
-    <block type="sensing_resettimer"/>
-    <block type="sensing_of">
-        <value name="PROPERTY">
-            <shadow type="sensing_of_property_menu"/>
-        </value>
-        <value name="OBJECT">
-            <shadow type="sensing_of_object_menu"/>
-        </value>
-    </block>
-    <block type="sensing_current">
-        <value name="CURRENTMENU">
-            <shadow type="sensing_currentmenu"/>
-        </value>
-    </block>
-    <block type="sensing_dayssince2000"/>
-</category>
-<category name="Operators" colour="#40BF4A" secondaryColour="#389438">
-    <block type="operator_add">
-        <value name="NUM1">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-        <value name="NUM2">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_subtract">
-        <value name="NUM1">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-        <value name="NUM2">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_multiply">
-        <value name="NUM1">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-        <value name="NUM2">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_divide">
-        <value name="NUM1">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-        <value name="NUM2">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_random">
-        <value name="FROM">
-            <shadow type="math_number">
-                <field name="NUM">1</field>
-            </shadow>
-        </value>
-        <value name="TO">
-            <shadow type="math_number">
-                <field name="NUM">10</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_lt">
-        <value name="OPERAND1">
-            <shadow type="text">
-                <field name="TEXT"/>
-            </shadow>
-        </value>
-        <value name="OPERAND2">
-            <shadow type="text">
-                <field name="TEXT"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_equals">
-        <value name="OPERAND1">
-            <shadow type="text">
-                <field name="TEXT"/>
-            </shadow>
-        </value>
-        <value name="OPERAND2">
-            <shadow type="text">
-                <field name="TEXT"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_gt">
-        <value name="OPERAND1">
-            <shadow type="text">
-                <field name="TEXT"/>
-            </shadow>
-        </value>
-        <value name="OPERAND2">
-            <shadow type="text">
-                <field name="TEXT"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_and"/>
-    <block type="operator_or"/>
-    <block type="operator_not"/>
-    <block type="operator_join">
-        <value name="STRING1">
-            <shadow type="text">
-                <field name="TEXT">hello</field>
-            </shadow>
-        </value>
-        <value name="STRING2">
-            <shadow type="text">
-                <field name="TEXT">world</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_letter_of">
-        <value name="LETTER">
-            <shadow type="math_whole_number">
-                <field name="NUM">1</field>
-            </shadow>
-        </value>
-        <value name="STRING">
-            <shadow type="text">
-                <field name="TEXT">world</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_length">
-        <value name="STRING">
-            <shadow type="text">
-                <field name="TEXT">world</field>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_mod">
-        <value name="NUM1">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-        <value name="NUM2">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_round">
-        <value name="NUM">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-    </block>
-    <block type="operator_mathop">
-        <value name="NUM">
-            <shadow type="math_number">
-                <field name="NUM"/>
-            </shadow>
-        </value>
-    </block>
-</category>
-<category name="Data" colour="#FF8C1A" secondaryColour="#DB6E00" custom="VARIABLE">
-</category>