allow port to be 'UNSET'.

This allows to have a setup where rabbitmq is not listening
on an non ssl port.
eg:
  class { '::rabbitmq':
    ssl                      => true,
    ssl_cacert               => '/etc/rabbitmq/ssl/cacert.pem',
    ssl_cert                 => '/etc/rabbitmq/ssl/cert.pem',
    ssl_key                  => '/etc/rabbitmq/ssl/key.pem',
    config_variables         => { tcp_listeners => '[]' },
    port                     => 'UNSET',
  }
Puppet 3.4 compatibility fix
Merge pull request #178 from bobtfish/puppet_3_4_fix

Puppet 3.4 compatibility fix
Merge pull request #176 from cirrax/cirrax

allow port to be 'UNSET'.
exchanges recreated if vhost is not default /

This should fix issue 173:
https://github.com/puppetlabs/puppetlabs-rabbitmq/issues/173

self.instances would only return the list of exchanges for the default
vhost /, this would cause a problem as any other exchange would be
recreated in every Puppet run.
Also, rabbitmqctl was used instead of rabbitmqadmin because the latest
requires the username and password of the admin user to list the
exchanges, while the first does not.