beginning effort to add threading and futures