This is clunky because the client code has to deal with types of objects in the dictionary and other details that have mostly to do with the YAML format, and not a lot to do with configuring mirrors.  Fix this with a `Mirror` object so that YAML parsing is handled up front and client code only calls functions and sets attrs on objects.