WHISTLE-1720: move some types into the queue manager
WHISTLE-1720: spec update
WHISTLE-1720: track the enter_when_empty flag

If there are no agents known to the queue manager, check the flag for
whether to allow the caller to enter the queue (or cancel the call).
WHISTLE-1720: add unavailable as an agent change state
WHISTLE-1720: send queue updates on agent changes for login/out
WHISTLE-1720: reject the member call if empty and flag is false
WHISTLE-1720: change to targeted publish
WHISTLE-1720: process member_cancel in callflow