added a concurrent execution model using threads...

... causing a performance improvement by a factor of approximately the number of cores available.

did some PEP8 cleanup and other minor imporvements