Both spsvgview and sodipodi are mostly built from a set of common libraries (these are static of course, to save people from versioning pain, but can in theory function as dynamic libs as well). The shared dynamic SVG GUI is built from: * libarikkei, libnr, libnrtype - lowlevel helper code * libspxml - xml backbone * libspsvg - svg parsing helpers * libspdisplay - GUI-independent renderer * libsodipodi - dynamic SVG document Sodipodi and spsvgview attach SVG document to different widgets (SPDesktop and SPSVGView), plus sodipodi adds extra controller parts (event contexts, selections, dialogs). The separation is still not 100%, but quite close, and should be easy to complete, if needed.