Nested ensure.New support
Allow created a new instance of ensure with a different testing context when th ensure
package has been shadowed by the ensure
variable.
For example:
ensure := ensure.New(t)
// ...
t.Run("important tests", func(t *testing.T) {
ensure := ensure.New(t)
// ...
})