Add gorm.Wrap to wrap an existing db connection with gorm.

This commit gives you the ability to specify the db connection that
gorm will use.  The code is based on the gorm.Open command, but
stripped down.  Since the connection already exists, there is much
less work needed.

This features lets you integrate with goose, which provides an
existing transaction to each migration.  Goose runs the migration
infrastructure, and gorm can provide the SQL.