Add autoconf configure script

This should make the build process more robust across different GNU/Linux distributions by checking for dependencies upfront.

It will also make the build and install process more tractable for users and packagers since the `configure` script idiom so widely used.

Automake is not used. The configure script just sets various output variables in `Makefile.in` to generate `Makefile`.

#Other Changes
* Improved make rules for building the objects and binary
* Don't set DESTDIR as per the Make docs.
* Added a `distclean` rule.