Add support for singleton queues

@mattgillooly @kbarrette - This will let us support singleton jobs without race conditions.  The next step is to add some tests, which requires getting the specs running locally (mine got as far as blowing up when it tried to install the postgres driver).

Before diving into that rabbit hole though, what do you think of this approach?