Generalize slot map

The new type is simpler, easier to understand, and allows `SlotMap`s to be used for job filters.