Handle null responses from Admin API more better

It seems that the RabbitMQ REST API returns an empty array in place of null for some objects. I noticed that when running GetOverview() against a brand new RabbitMQ cluster. If there had been no activity on the server before overview is requested, the queue_totals value is returned as [].

This change sets it up so that the empty array for a response object is interpreted as null. I noticed that this was happening for queue_totals and message_stats so I have converters for QueueTotals and MessageStats.