Feature: provision azure vm with different public and local ports for an...

Currently, when provisioning azure vm's, each endpoint must have the same port number for the public and local port.

Currently opening ssh, http and https is done like this:
<pre><code>
endpoints: "22,80,443"
</code></pre>

This commit will allow you, for instance, to assign the ssh port to 88822 by setting the local port as 22 and the public port as 88822.

This commit will allow the following to set ssh as 88822 externally:
<pre><code>
endpoints: "88822|22,80,443"
</code></pre>

This commit won't break any endpoint definitions that currently work.  ```"22,80,443"``` will still work fine.