Make transaction life cycle under control, prepare for correctly handle schema out of date error.
The old `GetTxn(forceNew boll)` is replaced by `Txn` and `NewTxn`,
`CommitTxn` and `RollbackTxn` is removed.
* varsutil: remove dependency on 'types' for 'variable' package
'variable' package will be used in 'types', remove dependency on 'types' by
moving functions to a new 'varsutil' package.
Also extract 'SetExec' from 'SimpleExec'