Please make this little more obvious, the fact that `create` takes instance and `options` and then does something to `instance` is very
unintuitive and one is really forced to read create to understand what happens. I would rather prefer if `create` did created something
and all the changes to `this` would have happened here. Also I think `create` is very ambiguous name that does not describes at all
what it is doing.