Use thimble

WIP, with some review points so it doesn't get too off-track.
Would it make sense to check that `self.tx_client` is instance of `Thimble` and blocking methods match? It might help to check if `self.tx_client._wrapper` is `self.client`.