Will we ever pass in values besides the return value of the ```bounds.getDirection()``` calls? If not, maybe we should fetch them inside ```loadTractData()```. Even if there might be edge cases where we'd want to pass specific values, it might be worth having defaults that can be overridden by params. 

I totally get where this style comes from, but I think JS being as verbose as it is, my personal preference is to usually simplify interfaces as much as possible.