there's no need to prefix private member variables with underscores
towards the algorithm state being part of the state of the algorithm object, soas we can pause it
remove search termination as a property of the algorithm runner; rather, it's a property of the run
removed apparent cruft
inlined a tangling method
move most operating variables for SPT creation into object persistable between calls
code refactored slightly for clarity
moved iteration logic out into its own method so it can be called all of its lonesome
better names for iteration return values