Do not use taglib-config.

Instead, make use of pkg-config unconditionally, since it's pretty much
available everywhere.

Besides, taglib-config does not distinguish from the archive to link
with and a path to search it for, which would all be (wrongly) picked up
by the LDFLAGS variable, because file related options matter to the
linker (the archives must be listed after the object files).

This was prompted by Jasen Price (issue #34). Upcoming commit will
really fix this.
Do not use LDFLAGS per the previous commit.

Should fix issue #34.
Reported by Jasen Price.
Remove extraneous library.
Move extern declarations to the main header file.
Move UNUSED define to the main header file.
Move each e-command to its own separate file.
Make filenames shorter, consistent and prettier.
The getopt(3) function returns an int not a char.
Remove unneeded flag variable.
Make the e-commands functions return void.

They are, currently, using the err(3) functions and were always
returning zero on success.
Sprinkle some const.
Add function to search and execute an e-command.
Limit scope (per issue #9).
Move structure definition to the equivalent file.

This is the start of the e-command code refactoring.
Idea taken from tmux.
Rename function pointer to exec.
Make an e-command accept an alias.

For now, used only by the rmfile (also known as rm) e-command to avoid
duplicating its structure.
Add e-command usage to its structure.
Fix help e-command argc handling.
Move all warnings to the e-command handling code.
Remove directories from program name.

This also makes it global, which will be needed when outputting the
e-command usage.