Add support for -o and fix arguments convention

Port names passed via command line will be treated only as shell glob
patterns (with `pkg query -g "%n-%v" $port\*`). Complete package names
(i.e., with version, like "gmake-3.82") will automatically match
single packages, while port names (like "gmake") will be able to match
many more. This is nothing but default portmaster behaviour.
Disable support for +IGNOREME
Disable package support for now
Hide some +IGNOREME management lines
Make expunge work with shell glob pattern
Exit immediately from useless functions
Use pkg query to make urb_update() a bit faster
Cleanup
Avoid matching $pdb in find_glob_dirs()

This bug doesn't relate to pkgng, but it's useful to fix it to allow
for parallel testing.
Add support for orphan flag

In theory, this logic should be able to match any possible case. In
practice, it's a bit hacky and requires lots of tests. Please note:
pkg query "%a" doesn't work yet, it always returns 0.

The logic may be resumed like this:
- ports specified on command line (including shell glob patterns, but
  with the exception of -o ports) are not orphan;
- updated packages keep their flag (with -o ports, the flag is passed
  by) - currently broken due to the bug noted above;
- everything else is marked as orphan.
Update comment about option -s

Currently pkg autoremove behaves a bit differently from option -s, but
it might replace it in future, should it gain per package deletion
request.
Add support for +IGNOREME

This unfortunately requires using /var/db/pkg/* directories (they will
be required by -R too, at least for the moment being, but will be
created on demand).
This has two side effects:
- command line arguments might match a single port, should there be
  a directory in /var/db/pkg with the same $name-$version;
- error handling was added to origin_from_pdb(). Well, this is not
  really a side effect.
Fix and cleanup orphan package support

Avoid setting port specified with -r option as non orphan, and make
sure that in `portmaster -o port2 port1` orphan flag is always passed
by port1 to port2, even when port2 is already installed.

Meanwhile, remove the reference to pkg autoremove, as it's different
from portmaster -s.
Add support for -R option

PM_UPDATE_DONE_FLAGs are stored in /var/db/pkg/* directories, which
are created on demand and are removed when found empty.
Make this an error and return 1
Delete build-only dependencies at once
Fix behaviour of -r when passing a port directory

-r accepts only package names or glob patterns.
Avoid deleting an empty .zfs/ directory
Use PM_MAKE_ARGS to pass -DINSTALLS_DEPENDS
Fix wrong variable usage