Refactor test plumbing to allow more flexibility

- Use broker specific methods to get information if needed
- Make it so an adapter (such as stomp) doesn't have to implement pop_message