TinkerTransactionGraph serves a basic purpose right now. It's most purposeful use case is to make it so that it can behave as a replacement graph for remote graph systems where you want to test transactional code but dont' want all the remote graph infrastructure. I was thinking that it could be more than that if we use its basic transaction functionality to offer simple storage to disk. In other words, TinkerGraph becomes an interface and the normal in-memory TinkerGraph remains unchanged, but is named TinkerMemoryGraph. Then, TinkerTransactionGraph implements the TinkerGraph interface and becomes TinkerStorageGraph. TinkerStorageGraph would have a more limited set of data types it could store than the memory version and would be governed by the GraphBinary type system which I would think tie into well to whatever plans there are for schema. i think APIs mostly remain unchanged because TinkerGraph.open() could still remain the way you create your graph. Not sure what a storage layer would look like for TinkerGraph at this time, but just wanted to suggest the idea to see if anyone had any thoughts on the matter.
