It's easy to have two Rc pointing to the same T, and use borrow_mut to end up with two mutable references to the same object. This undermines the mutability rules for Rust.
There's no other references to RcFactory outside this file, so this is likely dead code, and can be removed so it doesn't accidentally get used again.