minor improvement to Rc docs to avoid use of unwrap

I believe this example is showing how it is known for a fact that `gadget_opt`, while a weak pointer, is known to have at least one strong pointer floating around. I'm also not sure that `map` is the best way to handle options, but rather a `match` with a `None` case instead. In general `map` is used to produce `Option<U>` from `Option<T>`, but in this case it's being used in a more iterative context.