split up in two phases, tree generation and commit generation in preparation for parallel execution
pthread stuff implemented but no faster than single threaded