fix DB.withTransaction

neither `commit` or `rollback` if use return in `withTransaction`

```scala
withTransaction("default"){
  // something codes

  return foo; // throw ControlThrowable internally

} // neither commit or rollback
```

https://github.com/scala/scala/blob/v2.10.0/src/library/scala/util/control/NonFatal.scala
https://github.com/scala/scala/blob/v2.10.0/src/library/scala/util/control/ControlThrowable.scala