ThreadedTransaction: replace threads by callable and add pool