Remove unused IteratorDirection
Make transaction types private
Remove unused -pthread