static-nodes: Better -f option description
tools: Use test/kmod instead of kmod-nolib

The reason to have a kmod-nolib binary is that we need to call kmod on
test cases (or a symlink to it) and for testing things in tree. Since
we are using libtool if we are dinamically linking to libkmod what we
end up having is a shell script that (depending on the version *)
changes argv[0] to contain an "lt-" prefix. Since this screws with our
compat stuff, we had a kmod-nolib that links statically.

This all workaround works fine iff we are using one of the compat
commands, i.e. we are using the symlinks insmod, rmmod, modprobe, etc.
However if we are actually trying the kmod binary, this doesn't work
because we can't create a kmod symlink since there's already a kmod
binary.

So, completely give up on libtool fixing their mess. Now we create a
tool/test/ directory and the symlinks and kmod is put there.

* http://lists.gnu.org/archive/html/bug-libtool/2011-12/msg00023.html
kmod 14
tools: Do not link dynamically with libkmod

Instead of linking dynamically with libkmod, use libkmod-private.la. We
disallow creating a static libkmod because we can't hide symbols there
and it cause problems with external programs. However this should not
prevent users that are only interested in the tools we provide not being
able to ship only them keeping the library alone.

Other projects also do this to allow our tools to use certain functions
that should not be used outside of the project.
Use "-internal" suffix instead of "-private"
testsuite: Fix mkdir_p corner cases

 - Fix infinite loop when path is relative
 - Fix not considering EEXIST as a success
 - General refactor to mkdir_p so it never calls mkdir for an existing
   dir (given no one creates it from outside)
util: Add mkdir_p implementation from testsuite
static-nodes: don't fail if modules.devname not found

In containers/VM's/initrd one might not have installed any modules and
accompanying modules.devname Don't fail if this is the case, just warn.

When used in systemd this means we don't get a failing unit on booting
containers.
util: Add len arg to mkdir_p()
util: Add mkdir_parents()

Like mkdir_p, but discards the leaf, creating the parent directories.
static-nodes: create parent directories of output file

Allows us to drop call to "mkdir -p" from the systemd service file.
README: Move items from TODO

Put the differences between kmod and module-init-tools in the README
file so it's more visible.
NEWS: Add entries
shell-completion: Add initial completion for kmod

Based on journalctl and udevadm from systemd and adapted to kmod needs.
shell-completion: Add kmod static-nodes
build: Install bash completion data