Renamed class to better reflect its generality, and restructured recursive function in expectation of next section.
Another couple naming changes and started working on a callback to update estimates.