Changes KernelTransaction API

to be an AutoCloseable and where the KernelAPI isn't needed in order to
commit. Just call success() and close() the transasction.