Transaction support

I know that it's the case that the next `if` statement will not resolve to be true if this is true, but, I had to look through the code to a bit to really _make sure_. For reason, we can sort of localize the logic paths a little more by doing a `return this;` inside of the `if` statement body so devs know that it was the intention to not allow both of those ifs to execute? Does that make any sense?