added transaction support and multi-threaded client-test