Consolidate save/restore scripts into a single script

Eliminates some duplicate code and has a better name. Still not using
configparser yet, hopefully we won't need it.

Signed-off-by: Andy Grover <agrover@redhat.com>
Add a 'clear' command to targetctl

It seems like this might be useful. If restore has errors, it will result
in a partially applied configuration. Maybe this what the user wants, or
maybe they'd just as soon have no configuration if any part of it fails.
If so, 'clear' to the rescue if exit status from 'restore' is nonzero.

Signed-off-by: Andy Grover <agrover@redhat.com>
Add manpage for targetctl

Signed-off-by: Andy Grover <agrover@redhat.com>
Add save_to_file and restore_from_file

Push down the ability to save/restore state to/from a file, from targetcli
to rtslib. This will let us coordinate access from multiple API users
(targetd, targetcli, targetctl) to ensure atomicity, and also make
targetcli an optional installed component if the user is not using it.

Modify targetctl to use the new APIs. Since various exceptions set return
status to 1, targetctl should still properly be setting nonzero exit
status so scripts can check it.

Signed-off-by: Andy Grover <agrover@redhat.com>