threading to build all at once, and better output of what's going on