Refactor setupQueue

- makes setupQueue() able to use any value in $this->queueOptions based on the passed `$queueName`
- adds support for queue status details when a setupQueue is called against a queue that already exists. The returned `$status` value will report:
  - number of message in queue
  - number of unacknowledged messages
- Adjustment to produceTransactional() to use the new setupQueue return values as: `list($channel, )`