we might want to dup the options so that if the user further modifies the options hash to be passed to with(options), we don't run into problems.
@options is not referenced anywhere else yet in this initial implementation, so I can't tell if it's actually a potential issue.