ovn-nbctl: Make error handling consistent with ovs-vsctl.
ovs-vsctl distinguishes between internal database inconsistencies, which
it logs, and errors in commands specified by the user, which cause fatal
exits. ovn-nbctl wasn't as careful about this and tended to just log
everything. This commit brings it up to the same standard as ovs-vsctl.
This commit also adds --if-exists and --may-exist options in the same kinds
of places as ovs-vsctl, to allow for scripting in cases where it's OK if
an operation has already occurred.
Signed-off-by: Ben Pfaff <blp@ovn.org>
Acked-by: Justin Pettit <jpettit@ovn.org>