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
It works for me, even after cleaning out all the docker images on my machine and re-pulling it.

And both the official Fedora Docker image and the mattdm/fedora-small image have the same systemd related tweaks in their kickstarter files:

 * https://github.com/lsm5/docker-brew-fedora/blob/master/container-20-medium.ks
 * https://git.fedorahosted.org/cgit/cloud-kickstarts.git/tree/container/container-small-20.ks

But maybe it'll be more reliable to use the official Fedora image.