We can eliminate the deferred here now that it uses `mysql.read` which returns a promise. I think something like:

```js
    return mysql.read("SELECT value FROM dbMetadata WHERE name = ?", options.patchKey)
      .then(
        function (results) {
          if (!results.length) { throw error.dbIncorrectPatchLevel() }
          var patchLevel = +results[0].value
          if ( patchLevel !== options.patchLevel && patchLevel !== options.patchLevel + 1 ) {
            throw error.dbIncorrectPatchLevel(patchLevel, options.patchLevel)
          }
          log.trace({
            op: 'MySql.connect',
            patchLevel: patchLevel,
            patchLevelRequired: options.patchLevel
          })
          return mysql
        }
      )
```