Sumo package builder - 508

After a few false starts, here's how I propose arranging the rpm build scripts. It's loosely based on @itamarst 's `IStateChange` idea ...which makes the code easier to test and on what I've seen from buildbot configuration.

I'm not sure you'd call them unit tests, but I've tried to make the tests as fast and as self-contained as possible.

I've got as far as installing running `fpm` on a directory containing an installed Flocker and its dependencies, but there's still a lot of work to be done and the branch is already getting rather large (mostly due to tests). 

So I need help about:
 * how to break this up further
 * whether `fpm` is the right tool 
 * Is fpm going to allow me to create the split client / node / common RPMs that we currently produce
 * could speed things up by re-using the existing spec file and the RPM build code from https://github.com/ClusterHQ/build.clusterhq.com/blob/master/flocker_bb/builders/flocker.py

I've spent 1.5d on this so far already.

Fixes #508
I'm worried this means we still have the maintenance burden of maintaining the spec every time we add a dependency, and correspondingly having to deal with resulting lack of packages etc.. Part of motivation for omnibus packages was getting rid of the need to do so.

On the other hand, if we're not maintaining the spec file then it will become increasingly useless. Especially as we rearchitecture the system it's going to increasingly diverge from the actual system's setup.

I would therefore argue we should just get rid of it.