Added Executors and ThreadPoolExecutor to implement threaded pools.  See http://www.journaldev.com/1069/java-thread-pool-example-using-executors-and-threadpoolexecutor