bugfix: WATCH + MGET clearing inTransaction prematurely

To reproduce the problem:

  > t = yield conn.watch(k)
  > t.mget([k])
  > assert t.inTransaction # boom!

This commit introduces a `commit_cc' function (similar to
`unwatch_cc') which clears the `inTransaction' flag only if there has
been a `MULTI' command before.