Since UniValue constructors aren't marked explicit then these overloaded auxiliary members are unnecessary. This change also avoids some unnecessary UniValue copies.
Related to #15974.
NACK modifying UniValue here. Change it upstream or not at all, please.
The fact that it requires changes to our code would imply the overloaded members aren't actually unnecessary...?
I don't think this makes sense, sorry. If we're not using the overloaded methods doesn't mean other clients of univalue don't, so that's not enough reason to remove them.