allow passing context to using* functions

Lemme know what you think. This shouldn't interfere with using `.bind(ctx)`, right?