The above Grasshopper definition was sued to generate the cut files for Shizuku. The definition uses the native Grasshopper metaball node and lays out and labels all of the cut files. You can download the definition here:

While the metaball node automatically creates sections that can be used to cut two dimensional layers, the biggest challenge is finding the offset of the section to be cut. This is determined by either the layer above or below, depending on which is smallest or has points within the cut you are testing against. In this case the offset for each layer is specific so that it overlaps with the layer above or below, or in the case where it is inside the layer above and below it uses a generic offset. The section profile above and/or below can also be etched into the material to act as registration when you are laminating the layers. In the above definition the section profile above and below are included in the layout in different colors for etching. You can see the etched registration on the parts below.