From fb02e062fa349e596a61ec26d577a63e8c05df2c Mon Sep 17 00:00:00 2001
From: Jake Read <jake.read@cba.mit.edu>
Date: Sat, 2 Nov 2019 14:43:19 -0400
Subject: [PATCH] rm old contexts and systems, tune saturn

---
 hunks/adhoc/saturn.js                         |  10 +-
 hunks/interface/threejs_ghost.js              |   2 +
 libs/smallvectors.js                          |   2 +-
 save/contexts/cuttlefish/0ghost.json          | 124 --------
 save/contexts/cuttlefish/dbg-25ms-bare.json   | 124 --------
 save/contexts/cuttlefish/dbg-25ms-ghost.json  | 155 ----------
 save/contexts/cuttlefish/dbg-50ms-bare.json   | 124 --------
 save/contexts/cuttlefish/dbg-50ms-log.json    | 152 ----------
 save/contexts/cuttlefish/dbg-50ms.json        | 140 ---------
 .../cuttlefish/dbg-l0.json}                   |   4 +-
 save/contexts/cuttlefish/dbg.json             | 124 --------
 save/contexts/cuttlefish/ghost-1000ms.json    | 212 --------------
 save/contexts/cuttlefish/ghost-100ms.json     | 219 --------------
 save/contexts/cuttlefish/ghost-50ms.json      | 212 --------------
 save/contexts/cuttlefish/ghost-slow.json      | 219 --------------
 save/contexts/cuttlefish/ghost.json           | 124 --------
 save/contexts/cuttlefish/imageTest2.json      | 253 ----------------
 .../contexts/cuttlefish/imagedev-display.json |  83 ------
 .../cuttlefish/imagedev-thresholds.json       | 126 --------
 save/contexts/cuttlefish/mdmsegtest.json      | 136 ---------
 save/contexts/cuttlefish/newSystem-name.json  | 126 --------
 .../cuttlefish/png-to-vector-pcbtest.json     | 253 ----------------
 save/contexts/cuttlefish/sat-baretest.json    | 198 -------------
 save/contexts/cuttlefish/saturn-ghost.json    | 219 --------------
 save/contexts/cuttlefish/saturn-purebare.json | 117 --------
 .../contexts/cuttlefish/saturn-slowghost.json | 219 --------------
 save/contexts/cuttlefish/saturn-test.json     | 205 -------------
 save/contexts/cuttlefish/stest.json           | 173 -----------
 save/contexts/cuttlefish/test-np2p.json       |  96 ------
 save/systems/chart-adhoc-compare.json         | 103 -------
 save/systems/dbg-l0.json                      | 275 ------------------
 .../{vfpt-l1.json => dbg-lowerLevel.json}     |  96 +++++-
 save/systems/{dbg-l1.json => dbg-pipe.json}   |  96 +++---
 save/systems/ghost-50ms.json                  | 219 --------------
 34 files changed, 155 insertions(+), 4785 deletions(-)
 delete mode 100644 save/contexts/cuttlefish/0ghost.json
 delete mode 100644 save/contexts/cuttlefish/dbg-25ms-bare.json
 delete mode 100644 save/contexts/cuttlefish/dbg-25ms-ghost.json
 delete mode 100644 save/contexts/cuttlefish/dbg-50ms-bare.json
 delete mode 100644 save/contexts/cuttlefish/dbg-50ms-log.json
 delete mode 100644 save/contexts/cuttlefish/dbg-50ms.json
 rename save/{systems/vfpt-l1-raw.json => contexts/cuttlefish/dbg-l0.json} (98%)
 delete mode 100644 save/contexts/cuttlefish/dbg.json
 delete mode 100644 save/contexts/cuttlefish/ghost-1000ms.json
 delete mode 100644 save/contexts/cuttlefish/ghost-100ms.json
 delete mode 100644 save/contexts/cuttlefish/ghost-50ms.json
 delete mode 100644 save/contexts/cuttlefish/ghost-slow.json
 delete mode 100644 save/contexts/cuttlefish/ghost.json
 delete mode 100644 save/contexts/cuttlefish/imageTest2.json
 delete mode 100644 save/contexts/cuttlefish/imagedev-display.json
 delete mode 100644 save/contexts/cuttlefish/imagedev-thresholds.json
 delete mode 100644 save/contexts/cuttlefish/mdmsegtest.json
 delete mode 100644 save/contexts/cuttlefish/newSystem-name.json
 delete mode 100644 save/contexts/cuttlefish/png-to-vector-pcbtest.json
 delete mode 100644 save/contexts/cuttlefish/sat-baretest.json
 delete mode 100644 save/contexts/cuttlefish/saturn-ghost.json
 delete mode 100644 save/contexts/cuttlefish/saturn-purebare.json
 delete mode 100644 save/contexts/cuttlefish/saturn-slowghost.json
 delete mode 100644 save/contexts/cuttlefish/saturn-test.json
 delete mode 100644 save/contexts/cuttlefish/stest.json
 delete mode 100644 save/contexts/cuttlefish/test-np2p.json
 delete mode 100644 save/systems/chart-adhoc-compare.json
 delete mode 100644 save/systems/dbg-l0.json
 rename save/systems/{vfpt-l1.json => dbg-lowerLevel.json} (71%)
 rename save/systems/{dbg-l1.json => dbg-pipe.json} (93%)
 delete mode 100644 save/systems/ghost-50ms.json

diff --git a/hunks/adhoc/saturn.js b/hunks/adhoc/saturn.js
index 3125fe3..14ccdd2 100644
--- a/hunks/adhoc/saturn.js
+++ b/hunks/adhoc/saturn.js
@@ -53,10 +53,10 @@ export default function Saturn() {
   // settings,
   let deviation = 0.1 // virtual radius to junction about
   let accel = 980 // units/s/s (9.8m/s/s, 9800mm/s/s is 1G)
-  let minSpeed = 0.01 // conspicuous, to debug for tails (indexing)
+  let minSpeed = 1.0 // conspicuous, to debug for tails (indexing)
   let period = 0.050 // his.state('number', 'period', 50) // in ms,
   // current states,
-  let cruise = 200 // target, (units/s)
+  let cruise = 100 // target, (units/s) -> (200) is about our max speed ! due to stepper limits, so bee careful 
   // the metal (do here, or elsewhere?)
   let spmm = 200
 
@@ -374,12 +374,14 @@ export default function Saturn() {
         }
         */
         positions.shift()
+        speed = ramps[0].vf
         ramps.shift()
         if(debugRuntime) console.log(`> complete position`)
         // have to recalculate blocks now I think?
       } else {
         if(debugRuntime) console.log(`> updating p[0]`)
         positions[0] = ramps[0].pf
+        speed = ramps[0].vf
         ramps.shift()
       }
       if(debugRuntime) console.log(`${ramps.length} ramps, ${positions.length} positions`)
@@ -397,9 +399,9 @@ export default function Saturn() {
       // get the new pt, adding it if it is of any appreciable distance
       let np = inpts.get()
       try {
-        if (vDist(np, positions[positions.length - 1]) < 0.001) {
+        if (vDist(np, positions[positions.length - 1]) < (minSpeed * period)) {
           // dunk on 'em
-          console.warn('zero length appendage rejected by planner')
+          console.warn(`this move is smaller than the minimum segment defined by our minimum move-time and minimum speed, ${minSpeed * period}, the planner is walking past it`)
         } else {
           positions.push(np) // end of queue
           if(debugRuntime) console.log(`puts new position for ${positions.length}`)
diff --git a/hunks/interface/threejs_ghost.js b/hunks/interface/threejs_ghost.js
index 8f3c089..ee4ebdc 100644
--- a/hunks/interface/threejs_ghost.js
+++ b/hunks/interface/threejs_ghost.js
@@ -93,6 +93,7 @@ export default function ThreeGhosts() {
         // advance removes the oldest position, so we should start w/ the # we want
         pushToLine(nextpt)
         // do bounding box...
+        /*
         bbox.setFromPoints(geometry.vertices)
         bbox.getCenter(bbCenter)
         bbox.getSize(bbSize)
@@ -107,6 +108,7 @@ export default function ThreeGhosts() {
         camera.far = cameraToFarEdge * 3
         camera.updateProjectionMatrix()
         camera.lookAt(bbCenter)
+        */
       }
       //controls.update()
       renderer.render(scene, camera)
diff --git a/libs/smallvectors.js b/libs/smallvectors.js
index 547f142..8788978 100644
--- a/libs/smallvectors.js
+++ b/libs/smallvectors.js
@@ -3,7 +3,7 @@ let vDist = (v1, v2) => {
     // computes cartesian distance
     var sum = 0
     for (let i = 0; i < v1.length; i++) {
-        sum += Math.pow((v1[i] - v2[i]), 2)
+        sum += (v1[i] - v2[i]) * (v1[i] - v2[i])
     }
     return Math.sqrt(sum)
 }
diff --git a/save/contexts/cuttlefish/0ghost.json b/save/contexts/cuttlefish/0ghost.json
deleted file mode 100644
index 9e5951f..0000000
--- a/save/contexts/cuttlefish/0ghost.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "mm/pix",
-          "type": "number",
-          "value": "1"
-        },
-        {
-          "name": "longpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "shortpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "sl2path",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "motionSegment",
-          "type": "MDmseg"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_5",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/dbg-25ms-bare.json b/save/contexts/cuttlefish/dbg-25ms-bare.json
deleted file mode 100644
index 103ba5c..0000000
--- a/save/contexts/cuttlefish/dbg-25ms-bare.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        },
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number"
-        },
-        {
-          "name": "outz",
-          "type": "number"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "25"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/dbg-25ms-ghost.json b/save/contexts/cuttlefish/dbg-25ms-ghost.json
deleted file mode 100644
index f9ae7ff..0000000
--- a/save/contexts/cuttlefish/dbg-25ms-ghost.json
+++ /dev/null
@@ -1,155 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "mm/pix",
-          "type": "number",
-          "value": "1"
-        },
-        {
-          "name": "longpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "shortpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "sl2path",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number"
-        },
-        {
-          "name": "outz",
-          "type": "number"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "25"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_5",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/dbg-50ms-bare.json b/save/contexts/cuttlefish/dbg-50ms-bare.json
deleted file mode 100644
index 13b3cf1..0000000
--- a/save/contexts/cuttlefish/dbg-50ms-bare.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        },
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number"
-        },
-        {
-          "name": "outz",
-          "type": "number"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/dbg-50ms-log.json b/save/contexts/cuttlefish/dbg-50ms-log.json
deleted file mode 100644
index 12bb4ab..0000000
--- a/save/contexts/cuttlefish/dbg-50ms-log.json
+++ /dev/null
@@ -1,152 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number"
-        },
-        {
-          "name": "outz",
-          "type": "number"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/log_objects",
-      "name": "data/log_objects_5",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/dbg-50ms.json b/save/contexts/cuttlefish/dbg-50ms.json
deleted file mode 100644
index a40117e..0000000
--- a/save/contexts/cuttlefish/dbg-50ms.json
+++ /dev/null
@@ -1,140 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number"
-        },
-        {
-          "name": "outz",
-          "type": "number"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_4",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/vfpt-l1-raw.json b/save/contexts/cuttlefish/dbg-l0.json
similarity index 98%
rename from save/systems/vfpt-l1-raw.json
rename to save/contexts/cuttlefish/dbg-l0.json
index 6fa5362..59ab86f 100644
--- a/save/systems/vfpt-l1-raw.json
+++ b/save/contexts/cuttlefish/dbg-l0.json
@@ -85,12 +85,12 @@
         {
           "name": "isActive",
           "type": "boolean",
-          "value": "false"
+          "value": "true"
         },
         {
           "name": "otherLink",
           "type": "uint16",
-          "value": "0"
+          "value": "1"
         },
         {
           "name": "inputList",
diff --git a/save/contexts/cuttlefish/dbg.json b/save/contexts/cuttlefish/dbg.json
deleted file mode 100644
index 9e5951f..0000000
--- a/save/contexts/cuttlefish/dbg.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "mm/pix",
-          "type": "number",
-          "value": "1"
-        },
-        {
-          "name": "longpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "shortpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "sl2path",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "motionSegment",
-          "type": "MDmseg"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_5",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/ghost-1000ms.json b/save/contexts/cuttlefish/ghost-1000ms.json
deleted file mode 100644
index 70aa840..0000000
--- a/save/contexts/cuttlefish/ghost-1000ms.json
+++ /dev/null
@@ -1,212 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "1000"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_9",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/ghost-100ms.json b/save/contexts/cuttlefish/ghost-100ms.json
deleted file mode 100644
index 5a742ba..0000000
--- a/save/contexts/cuttlefish/ghost-100ms.json
+++ /dev/null
@@ -1,219 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "100"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_9",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/ghost-50ms.json b/save/contexts/cuttlefish/ghost-50ms.json
deleted file mode 100644
index 5833f31..0000000
--- a/save/contexts/cuttlefish/ghost-50ms.json
+++ /dev/null
@@ -1,212 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_9",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/ghost-slow.json b/save/contexts/cuttlefish/ghost-slow.json
deleted file mode 100644
index 8471120..0000000
--- a/save/contexts/cuttlefish/ghost-slow.json
+++ /dev/null
@@ -1,219 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "1000"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_9",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/ghost.json b/save/contexts/cuttlefish/ghost.json
deleted file mode 100644
index 9e5951f..0000000
--- a/save/contexts/cuttlefish/ghost.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_2",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "mm/pix",
-          "type": "number",
-          "value": "1"
-        },
-        {
-          "name": "longpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "shortpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "sl2path",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_3",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "motionSegment",
-          "type": "MDmseg"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_5",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/imageTest2.json b/save/contexts/cuttlefish/imageTest2.json
deleted file mode 100644
index 75cc45c..0000000
--- a/save/contexts/cuttlefish/imageTest2.json
+++ /dev/null
@@ -1,253 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/thresholdrgba",
-      "name": "image/thresholdrgba_3",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "threshold",
-          "type": "number",
-          "value": "0.5"
-        }
-      ]
-    },
-    {
-      "type": "image/readpng",
-      "name": "image/readpng_3",
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "release",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "image/displayimagedata",
-      "name": "image/displayimagedata_4",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ]
-    },
-    {
-      "type": "image/distanceTransform",
-      "name": "image/distanceTransform_6",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "Float32Array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/edgeDetect",
-      "name": "image/edgeDetect_7",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/offset",
-      "name": "image/offset_8",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "Float32Array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "offset",
-          "type": "number",
-          "value": "0.5"
-        },
-        {
-          "name": "width",
-          "type": "number",
-          "value": "190"
-        },
-        {
-          "name": "height",
-          "type": "number",
-          "value": "266"
-        }
-      ]
-    },
-    {
-      "type": "image/orientEdges",
-      "name": "image/orientEdges_9",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "10",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/renderVectors",
-      "name": "image/renderVectors_11",
-      "inputs": [
-        {
-          "name": "Vectors",
-          "type": "array"
-        }
-      ]
-    },
-    {
-      "type": "image/vectorize",
-      "name": "image/vectorize_11",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "Vectors",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "9",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/imagedev-display.json b/save/contexts/cuttlefish/imagedev-display.json
deleted file mode 100644
index 24463df..0000000
--- a/save/contexts/cuttlefish/imagedev-display.json
+++ /dev/null
@@ -1,83 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/readpng",
-      "name": "image/readpng_2",
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "release",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "image/displayimagedata",
-      "name": "image/displayimagedata_3",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ]
-    }
-  ]
-}
diff --git a/save/contexts/cuttlefish/imagedev-thresholds.json b/save/contexts/cuttlefish/imagedev-thresholds.json
deleted file mode 100644
index 884816c..0000000
--- a/save/contexts/cuttlefish/imagedev-thresholds.json
+++ /dev/null
@@ -1,126 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/thresholdrgba",
-      "name": "image/thresholdrgba_3",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "threshold",
-          "type": "number",
-          "value": "0.5"
-        }
-      ]
-    },
-    {
-      "type": "image/readpng",
-      "name": "image/readpng_3",
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "release",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "image/displayimagedata",
-      "name": "image/displayimagedata_4",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ]
-    },
-    {
-      "type": "image/displayimagedata",
-      "name": "image/displayimagedata_5",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/mdmsegtest.json b/save/contexts/cuttlefish/mdmsegtest.json
deleted file mode 100644
index 2cf45e9..0000000
--- a/save/contexts/cuttlefish/mdmsegtest.json
+++ /dev/null
@@ -1,136 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        },
-        {
-          "name": "motionSegment",
-          "type": "MDmseg",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_3",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "true"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_4",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "mm/pix",
-          "type": "number",
-          "value": "0.35277777777777775"
-        },
-        {
-          "name": "longpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "shortpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "sl2path",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/newSystem-name.json b/save/contexts/cuttlefish/newSystem-name.json
deleted file mode 100644
index 4d02bef..0000000
--- a/save/contexts/cuttlefish/newSystem-name.json
+++ /dev/null
@@ -1,126 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/readpng",
-      "name": "image/readpng_2",
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "release",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "image/displayimagedata",
-      "name": "image/displayimagedata_5",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ]
-    },
-    {
-      "type": "image/thresholdrgba",
-      "name": "image/thresholdrgba_6",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "threshold",
-          "type": "number",
-          "value": "0.5"
-        }
-      ]
-    },
-    {
-      "type": "image/displayimagedata",
-      "name": "image/displayimagedata_6",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/png-to-vector-pcbtest.json b/save/contexts/cuttlefish/png-to-vector-pcbtest.json
deleted file mode 100644
index ab5cff8..0000000
--- a/save/contexts/cuttlefish/png-to-vector-pcbtest.json
+++ /dev/null
@@ -1,253 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/thresholdrgba",
-      "name": "image/thresholdrgba_3",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "threshold",
-          "type": "number",
-          "value": "0.5"
-        }
-      ]
-    },
-    {
-      "type": "image/readpng",
-      "name": "image/readpng_3",
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "release",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "image/displayimagedata",
-      "name": "image/displayimagedata_4",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ]
-    },
-    {
-      "type": "image/distanceTransform",
-      "name": "image/distanceTransform_6",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "Float32Array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/edgeDetect",
-      "name": "image/edgeDetect_7",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/offset",
-      "name": "image/offset_8",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "Float32Array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "offset",
-          "type": "number",
-          "value": "0.1"
-        },
-        {
-          "name": "width",
-          "type": "number",
-          "value": "1854"
-        },
-        {
-          "name": "height",
-          "type": "number",
-          "value": "1917"
-        }
-      ]
-    },
-    {
-      "type": "image/orientEdges",
-      "name": "image/orientEdges_9",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "image",
-          "type": "ImageData",
-          "connections": [
-            {
-              "inHunkIndex": "10",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "image/renderVectors",
-      "name": "image/renderVectors_11",
-      "inputs": [
-        {
-          "name": "Vectors",
-          "type": "array"
-        }
-      ]
-    },
-    {
-      "type": "image/vectorize",
-      "name": "image/vectorize_11",
-      "inputs": [
-        {
-          "name": "image",
-          "type": "ImageData"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "Vectors",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "9",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/sat-baretest.json b/save/contexts/cuttlefish/sat-baretest.json
deleted file mode 100644
index f84a645..0000000
--- a/save/contexts/cuttlefish/sat-baretest.json
+++ /dev/null
@@ -1,198 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/saturn-ghost.json b/save/contexts/cuttlefish/saturn-ghost.json
deleted file mode 100644
index e920678..0000000
--- a/save/contexts/cuttlefish/saturn-ghost.json
+++ /dev/null
@@ -1,219 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_8",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/saturn-purebare.json b/save/contexts/cuttlefish/saturn-purebare.json
deleted file mode 100644
index f9ffddf..0000000
--- a/save/contexts/cuttlefish/saturn-purebare.json
+++ /dev/null
@@ -1,117 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number"
-        },
-        {
-          "name": "outy",
-          "type": "number"
-        },
-        {
-          "name": "outz",
-          "type": "number"
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_9",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/saturn-slowghost.json b/save/contexts/cuttlefish/saturn-slowghost.json
deleted file mode 100644
index d131df4..0000000
--- a/save/contexts/cuttlefish/saturn-slowghost.json
+++ /dev/null
@@ -1,219 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "500"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_9",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/saturn-test.json b/save/contexts/cuttlefish/saturn-test.json
deleted file mode 100644
index 392cbb3..0000000
--- a/save/contexts/cuttlefish/saturn-test.json
+++ /dev/null
@@ -1,205 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/stest.json b/save/contexts/cuttlefish/stest.json
deleted file mode 100644
index 7f9daee..0000000
--- a/save/contexts/cuttlefish/stest.json
+++ /dev/null
@@ -1,173 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/contexts/cuttlefish/test-np2p.json b/save/contexts/cuttlefish/test-np2p.json
deleted file mode 100644
index 2cbe0cd..0000000
--- a/save/contexts/cuttlefish/test-np2p.json
+++ /dev/null
@@ -1,96 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "data/open_json",
-      "name": "data/open_json_2",
-      "outputs": [
-        {
-          "name": "data",
-          "type": "reference",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "release",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/npath_to_path",
-      "name": "adhoc/npath_to_path_3",
-      "inputs": [
-        {
-          "name": "path",
-          "type": "reference"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "path",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "clearance",
-          "type": "number",
-          "value": "10"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/chart-adhoc-compare.json b/save/systems/chart-adhoc-compare.json
deleted file mode 100644
index b16ba9b..0000000
--- a/save/systems/chart-adhoc-compare.json
+++ /dev/null
@@ -1,103 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/open-dex-json",
-      "name": "adhoc/open-dex-json_5",
-      "outputs": [
-        {
-          "name": "data",
-          "type": "reference",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/open-4411-csv",
-      "name": "adhoc/open-4411-csv_5",
-      "outputs": [
-        {
-          "name": "data",
-          "type": "reference",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "1"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/2x_linechart",
-      "name": "adhoc/2x_linechart_5",
-      "inputs": [
-        {
-          "name": "array",
-          "type": "reference"
-        },
-        {
-          "name": "array",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "displayCount",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/dbg-l0.json b/save/systems/dbg-l0.json
deleted file mode 100644
index 8950c35..0000000
--- a/save/systems/dbg-l0.json
+++ /dev/null
@@ -1,275 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "link",
-      "name": "link_2",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray"
-        },
-        {
-          "name": "segs",
-          "type": "MDmseg"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "3",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "mgrMsgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "isActive",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "otherLink",
-          "type": "uint16",
-          "value": "0"
-        },
-        {
-          "name": "inputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray), segs (MDmseg)"
-        },
-        {
-          "name": "outputList",
-          "type": "string",
-          "value": "mgrMsgs (byteArray)"
-        }
-      ]
-    },
-    {
-      "type": "pipes/vfptc",
-      "name": "pipes/vfptc_3",
-      "inputs": [
-        {
-          "name": "data",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "data",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "pipe status",
-          "type": "string",
-          "value": "open"
-        },
-        {
-          "name": "websocket port",
-          "type": "string",
-          "value": "2042"
-        },
-        {
-          "name": "usb product id",
-          "type": "string",
-          "value": "8022"
-        },
-        {
-          "name": "pipe reset",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "serialport status",
-          "type": "string",
-          "value": "open"
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "view_4",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "1"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_5",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "mm/pix",
-          "type": "number",
-          "value": "0.35277777777777775"
-        },
-        {
-          "name": "longpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "shortpath",
-          "type": "boolean",
-          "value": "false"
-        },
-        {
-          "name": "sl2path",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_6",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "motionSegment",
-          "type": "MDmseg",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "2"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
diff --git a/save/systems/vfpt-l1.json b/save/systems/dbg-lowerLevel.json
similarity index 71%
rename from save/systems/vfpt-l1.json
rename to save/systems/dbg-lowerLevel.json
index be5e421..f6fe6b7 100644
--- a/save/systems/vfpt-l1.json
+++ b/save/systems/dbg-lowerLevel.json
@@ -57,6 +57,10 @@
         {
           "name": "mgrMsgs",
           "type": "byteArray"
+        },
+        {
+          "name": "mseg",
+          "type": "MDmseg"
         }
       ],
       "outputs": [
@@ -95,7 +99,7 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray)"
+          "value": "mgrMsgs (byteArray), mseg (MDmseg)"
         },
         {
           "name": "outputList",
@@ -162,6 +166,16 @@
                     "inHunkInput": "0"
                   }
                 ]
+              },
+              {
+                "name": "mseg",
+                "type": "MDmseg",
+                "connections": [
+                  {
+                    "inHunkIndex": "4",
+                    "inHunkInput": "0"
+                  }
+                ]
               }
             ],
             "states": [
@@ -183,7 +197,7 @@
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray)"
+                "value": "mgrMsgs (byteArray), mseg (MDmseg)"
               }
             ]
           },
@@ -208,6 +222,84 @@
                 ]
               }
             ]
+          },
+          {
+            "type": "driver/stepper",
+            "name": "step_driver",
+            "inputs": [
+              {
+                "name": "increment",
+                "type": "Dmseg"
+              },
+              {
+                "name": "enable",
+                "type": "boolean"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "increment",
+                "type": "int32"
+              },
+              {
+                "name": "stallGuard",
+                "type": "uint32"
+              }
+            ],
+            "states": [
+              {
+                "name": "current (6-24)",
+                "type": "uint16",
+                "value": "16"
+              },
+              {
+                "name": "enable",
+                "type": "boolean",
+                "value": "true"
+              }
+            ]
+          },
+          {
+            "type": "control/MDtoDmseg",
+            "name": "control/MDtoDmseg_4",
+            "inputs": [
+              {
+                "name": "motionSegment",
+                "type": "MDmseg"
+              }
+            ],
+            "outputs": [
+              {
+                "name": "dmSegX",
+                "type": "Dmseg",
+                "connections": [
+                  {
+                    "inHunkIndex": "3",
+                    "inHunkInput": "0"
+                  }
+                ]
+              },
+              {
+                "name": "dmSegY",
+                "type": "Dmseg"
+              },
+              {
+                "name": "dmSegZ",
+                "type": "Dmseg"
+              }
+            ],
+            "states": [
+              {
+                "name": "ticks/s",
+                "type": "uint32",
+                "value": "65535"
+              },
+              {
+                "name": "steps/u",
+                "type": "uint32",
+                "value": "200"
+              }
+            ]
           }
         ]
       }
diff --git a/save/systems/dbg-l1.json b/save/systems/dbg-pipe.json
similarity index 93%
rename from save/systems/dbg-l1.json
rename to save/systems/dbg-pipe.json
index af8c693..a2fd3bd 100644
--- a/save/systems/dbg-l1.json
+++ b/save/systems/dbg-pipe.json
@@ -59,7 +59,7 @@
           "type": "byteArray"
         },
         {
-          "name": "segs",
+          "name": "mseg",
           "type": "MDmseg"
         }
       ],
@@ -99,7 +99,7 @@
         {
           "name": "inputList",
           "type": "string",
-          "value": "mgrMsgs (byteArray), segs (MDmseg)"
+          "value": "mgrMsgs (byteArray), mseg (MDmseg)"
         },
         {
           "name": "outputList",
@@ -168,7 +168,7 @@
                 ]
               },
               {
-                "name": "segs",
+                "name": "mdseg",
                 "type": "MDmseg",
                 "connections": [
                   {
@@ -197,7 +197,7 @@
               {
                 "name": "outputList",
                 "type": "string",
-                "value": "mgrMsgs (byteArray), segs (MDmseg)"
+                "value": "mgrMsgs (byteArray), mdseg (MDmseg)"
               }
             ]
           },
@@ -224,12 +224,12 @@
             ]
           },
           {
-            "type": "stepper",
+            "type": "driver/stepper",
             "name": "step_driver",
             "inputs": [
               {
                 "name": "increment",
-                "type": "int32"
+                "type": "Dmseg"
               },
               {
                 "name": "enable",
@@ -271,7 +271,13 @@
             "outputs": [
               {
                 "name": "dmSegX",
-                "type": "Dmseg"
+                "type": "Dmseg",
+                "connections": [
+                  {
+                    "inHunkIndex": "3",
+                    "inHunkInput": "0"
+                  }
+                ]
               },
               {
                 "name": "dmSegY",
@@ -286,7 +292,7 @@
               {
                 "name": "ticks/s",
                 "type": "uint32",
-                "value": "65535"
+                "value": "6000000"
               },
               {
                 "name": "steps/u",
@@ -369,16 +375,46 @@
         }
       ]
     },
+    {
+      "type": "adhoc/saturn",
+      "name": "adhoc/saturn_5",
+      "inputs": [
+        {
+          "name": "posn",
+          "type": "array"
+        }
+      ],
+      "outputs": [
+        {
+          "name": "posn",
+          "type": "array"
+        },
+        {
+          "name": "motionSegment",
+          "type": "MDmseg",
+          "connections": [
+            {
+              "inHunkIndex": "2",
+              "inHunkInput": "2"
+            },
+            {
+              "inHunkIndex": "7",
+              "inHunkInput": "0"
+            }
+          ]
+        }
+      ]
+    },
     {
       "type": "adhoc/tpath",
-      "name": "adhoc/tpath_5",
+      "name": "adhoc/tpath_6",
       "outputs": [
         {
           "name": "position",
           "type": "array",
           "connections": [
             {
-              "inHunkIndex": "6",
+              "inHunkIndex": "5",
               "inHunkInput": "0"
             }
           ]
@@ -408,40 +444,8 @@
       ]
     },
     {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_6",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "motionSegment",
-          "type": "MDmseg",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "2"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
+      "type": "data/log_objects",
+      "name": "data/log_objects_7",
       "inputs": [
         {
           "name": "tolog",
@@ -452,12 +456,12 @@
         {
           "name": "prefix",
           "type": "string",
-          "value": "LOG:"
+          "value": "SEG:"
         },
         {
           "name": "console",
           "type": "boolean",
-          "value": "false"
+          "value": "true"
         }
       ]
     }
diff --git a/save/systems/ghost-50ms.json b/save/systems/ghost-50ms.json
deleted file mode 100644
index 4ec6e40..0000000
--- a/save/systems/ghost-50ms.json
+++ /dev/null
@@ -1,219 +0,0 @@
-{
-  "interpreterName": "cuttlefish",
-  "interpreterVersion": "v0.1",
-  "hunks": [
-    {
-      "type": "manager",
-      "name": "nrol",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "1",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "view",
-      "name": "tlview",
-      "inputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "msgs",
-          "type": "byteArray",
-          "connections": [
-            {
-              "inHunkIndex": "0",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "type": "adhoc/saturn",
-      "name": "adhoc/saturn_2",
-      "inputs": [
-        {
-          "name": "posn",
-          "type": "array"
-        }
-      ],
-      "outputs": [
-        {
-          "name": "outx",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "4",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outy",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "5",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "outz",
-          "type": "number",
-          "connections": [
-            {
-              "inHunkIndex": "6",
-              "inHunkInput": "0"
-            }
-          ]
-        },
-        {
-          "name": "posn",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "7",
-              "inHunkInput": "0"
-            },
-            {
-              "inHunkIndex": "8",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/tpath",
-      "name": "adhoc/tpath_3",
-      "outputs": [
-        {
-          "name": "position",
-          "type": "array",
-          "connections": [
-            {
-              "inHunkIndex": "2",
-              "inHunkInput": "0"
-            }
-          ]
-        }
-      ],
-      "states": [
-        {
-          "name": "reset",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_4",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_5",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "adhoc/consumer",
-      "name": "adhoc/consumer_6",
-      "inputs": [
-        {
-          "name": "takes",
-          "type": "number"
-        }
-      ],
-      "states": [
-        {
-          "name": "period",
-          "type": "number",
-          "value": "50"
-        }
-      ]
-    },
-    {
-      "type": "data/logger",
-      "name": "data/logger_7",
-      "inputs": [
-        {
-          "name": "tolog",
-          "type": "reference"
-        }
-      ],
-      "states": [
-        {
-          "name": "prefix",
-          "type": "string",
-          "value": "LOG:"
-        },
-        {
-          "name": "console",
-          "type": "boolean",
-          "value": "false"
-        }
-      ]
-    },
-    {
-      "type": "interface/threejs_ghost",
-      "name": "interface/threejs_ghost_9",
-      "inputs": [
-        {
-          "name": "point",
-          "type": "array"
-        }
-      ]
-    }
-  ]
-}
\ No newline at end of file
-- 
GitLab