[api] Remove `managementCertificate` in favor of `key` and `cert`

As mentioned in a8ddebf6781b2f80af76ab077a636e10128c8cb3, this makes our
API similar to what `node` presents to user.

This way we also avoid synchronous operations when creating a client and
make storing credentials easier (they can be stored in memory, on a
network resource, etc.).
[api] Load server options from `createServer()` args

Previously Azure client would use some options from
`pkgcloud.compute.createClient` argument. This didn't fit the semantics
we are using and had to be changed.

Following server creation options are now supported (and required) by
Azure:

  * `location` - data center the server will be placed in
  * `ssh` - credentials which will be loaded onto server
  * `username` and `password` - data for creation of UNIX user on the
    server

Following options are supported but not required:

  * `rdp` - RDP settings (for Windows VMs)
  * `ports` - ports to open on destination VM
[test] Make tests use the new Azure API
[minor] Remove outdated SSH certs
[api] Default `ports` to an empty Array
updated azure example for api refactor
updated azure docs for api refactor
[fix] Fix Azure bootstrap options
Merge pull request #71 from nodejitsu/azure-api-refactor

Azure API refactor