Update gio modules after deinstalling files

This was causing the module cache file to remain as a leftover even
after all modules were removed. This could be seen with testing
devel/gio-fam-backend
Remove hard coded list of command that should be in post-deinstall and
push them in a variable called FORCE_POST get from env var

Conflicts:
	libpkg/pkg_ports.c
Ensure returning a EX_* error code in exec_audit.

Fixed a codepath where exec_audit could return EPKG_ERROR, since it
should only use sysexit error codes.
use the __unused macro for argc and argv

In order to avoid scan-build crying a lot about dead increment of argc
and argv after the getopt(3) loop.
Use typedef'ed `pkg_config_t' in for (struct pkg_config).type
Fix an invalid read (discovered by gcc44).
typos fix.
pkg-install exits 0 when requested packages are already installed.
Small code refactoring to avoid too many condition branches.
Always check the return value of pkg_new().

pkg_new() can fail when malloc(3) fails (ENOMEM) and we should always
ensure that the call was successfull and act acordingly on error.
Fix a bad calloc(3) call (discovered by scan-build)
Codepath refactoring.

testing against -1 is more "intuitive" as most libc function will return
-1 on error. When possible we should avoid having error handling
codepath in the function body and prefer enclosing it in block like
this:

if (error) {
    /* error handling */
}
pkg clean -a to clean all packages in the cache
Fix build with gcc48: free_func is never NULL.
always initialize the `ret' variable in file() and meta_dirrm() in order to avoid returning undefined value.

The `ret' variable was not initialized, leading to a codepath that could
return garbage value in meta_dirrm(). Also, the file() function was
returning EPKG_OK regardless of the `ret' variable.
Remove the unused `force' variable in exec_fetch().