Some small changes to avoid doing extra operations when there is no session.
Rewrote handling of implicit transaction. The implicit transaction is no longer using the public Transaction class but an internal class and is not accessible by users. It will also be cleaned up in the end of each task.
Merge branch 'develop' of github.com:Starcounter/Starcounter into develop