kpatch: single enabled dir

Programs aren't supposed to touch /usr/lib, so use a new backend
directory scheme:
- /var/lib/kpatch/<version>/enabled for all symlinks
- /var/lib/kpatch/<version> for user installed
- /usr/lib/kpatch/<version> for system installed
kpatch: remove unload --all

A proper implementation would be trickier and I'm not sure this is a
useful command anyway.
kpatch: patches not modules

Be more consistent with the patch metaphor (as opposed to modules):

- change load/unload to apply/remove
- strip "kpatch-" prefix from the module name, so that patch name "foo"
  corresponds to module "kpatch-foo.ko"
kpatch: use relative paths for finding tools/data

Use relative paths so that kpatch and kpatch-build will find the tools
and data they need, regardless of the installation prefix.  Also add
support for running them straight from the git repo.
kpatch-build: put rpm in temp directory
kpatch-build: log to /tmp
kpatch-build: allow building as non-root

Allowing the user to build without needing to be root.  If the needed
packages aren't installed, the error messages will tell the user what to
install.
Merge pull request #9 from jpoimboe/kpatch-script-improvements

kpatch script improvements