Good idea - and maybe a sub-interface `PriorityChannelMessageStore` which would be the required type if we open up `message-store` on `priority-channel` (and you'd get a `QueueChannel` with a `PriorityChannelMessageStore` instead of a `PriorityChannel`).

I think disallowing general message stores might be a little too much; some use cases might be just fine and it would be a burden for us to force them to maintain 2 sets of, say, JDBC tables. Maybe we could just emit a `WARN` for now if they don't use an optimized store (or just leave it to the documentation).

I will rework this PR on Monday.