Makefile vars are traditionally upper case
Explicitly define version components

The package version is distinct from package iteration (revision for
debs, release for rpms, etc.) Explicitly separate them so that it is
clear how they are being set when building packages.
Rely on fpm to set the filename

This greatly simplifies the process of generating a properly named
package file for the target distro.
Release and snapshot builds
Ubuntu prereq and clean targets
OSX portability fixes

* mktemp requires -t on OSX
* sed -r does not work on OSX :(
Fix broken target requirements (version now var)
Escape dollar sign
Simplify clean target