Code cleanup and add transaction support
Change namespace names