Make set_option into context manager

<del>
Moving `option_context` to toplevel rather then making `set_option` a context manager means
a one line change instead of metaclasses and config_prefix subtlety and the rest of the ich.
When a given approach to something explodes in complexity I'll [bravely, bravely run away](http://www.youtube.com/watch?v=BZwuTo7zKM8) every single time.
</del>

closes #5618
replaces #5625. 

@jtratner, your points about config_prefix being broken are valid, feel free to pick up in the future
if you're so inclined.

cc @jseabold