Use a throwaway copy of local.sqlite for testing purposes.  Need to
populate this with dummy packages.  Hmmm....
Revamp pkg register

- Make plist optional

- Add testing_mode, which turns off pkg_analyze_files() and
  pkg_copy_tree(), ie. don't require package files to be present on
  disk.  Needless to say, this can really fubar your package database
  if used intemperately.

- Add -M option to read *only* from the named metadata file, instead
  of all the legacy +FILES used by pkg_tools

- Remove several pointless uses of strdup().
Update the pkg-register man page to match changes in the previous commit.
Fix usage_register() message and tidy up some comments.
D'Oh!  After all that effort to read the manifest file name, perhaps
we should use it to read the manifest from.
Use a dummy $PKG_DBDIR/local.sqlite populated with data for two
arbitrarily selected packages.  Uses some manifest files created by
'pkg info -R pkgname'

Use INSTALL_AS_USER=yes so tests don't need special privileges to run.
Hook up the regression tests to the top-level makefile, now the tests
are starting to do something useful.

Time to start filling in the test cases.