hey squintz,
unfortunately the java code pretty much *is* the documentation at this point. we've been so focused on getting the physical stuff working that the software has lagged behind a bit.
anyway, the basic operation is this:
you take a STL file (which contains the dimensions of the 3d object)
you slice that STL file into layers the thickness of your extruded line
you take the 2D layers and generate toolpaths for each layer that are the thickness of your extruded line
it then sends those lines to the firmware for translation into movement and extrusion.
thats how it works roughly. obviously each of those steps is rather complex, but not as complex as you would think.