Describe how we want pkg add to work.
Major rewrite of pkg add -- work in progress

 * Use the pkg_jobs mechanism, like update, install, delete
   So the user now gets shown a work summary with details of
   disk space usage etc.

 * pkg_add() now becomes private API, like pkg_delete()

 * When a struct pkg is instantiated by reading a .txz file,
   store details of the file in struct pkg_archive

 * Avoid re-opening (and reparsing +METADIR) multiple times

 * Add -fqny options to pkg add with the usual meanings

 * Rewrite pkg-add.8 man page
Nuke pkg_dep_already_installed() as it is virtually identical to
pkg_is_installed()
Replace pkg_is_installed() with pkgdb_pkg_is_intalled() -- just do a
very simple DB query to identify instaleld packages.
Don't need the 2nd argument to pkg_jobs_apply now archive data is
stored in struct pkg.
Really remove dyked-out bits of pkg_add()
Add transaction handling functions (BEGIN/COMMIT/ROLLBACK or
SAVEPOINT/RELEASE/ROLLBACK TO)
More WIP.