Add multiprocessing Pool mock to make tests deterministic

By not mocking out Pool previously, tests would run parallel threads
which made it impossible to make a deterministic test as to what the
actual result would be, which caused ocasional and seemingly random
errors when running tests with Travis or Drone.