Adds dict option handling.

Fixes #838. Converts optparse objects into dicts before passing them
into permutations_runner, which is probably how it should have been in
the first place.