fleshed out high level random forest algorithm