Make Makefile mostly automatic.

There is still room for sorting out variables for flags, etc, and of course
for autotooling.

Other changes are:
- Make test files include the files they exercise, instead of vice-versa.
- reversing the order of includes in src/lib/blockdev.c to
enable compilation w/out the include in src/lib/blockdev.h.
- A few small fixes indicated by warning/error messages.

Signed-off-by: mulhern <amulhern@redhat.com>
Ignore all test executables.

Signed-off-by: mulhern <amulhern@redhat.com>