Update provisioning internals docs

 - Placement directives
 - Availability zone spread

Also, changed to use Markdown format.
Merge pull request #679 from voidspace/waitfor-replicaset

Remove the Remove

replicaset/replicaset_test : get rid of extraneous calls to Remove

Remove is a slow operation, and we're seeing spurious failures in CI here. We create a bunch of mongo instances and defer removing them from the replicaset. We destroy them immediately after removal, and then destroy the root, so the Remove is extraneous. This should improve test reliability.
cmd/jujud: avoid duplicate code for counting upgrade attempts in upgrade tests
cmd/jujud: avoid duplication in the 2 "success" upgrade test cases
cmd/jujud: shorten upgrade test helper names

Makes the tests a little more readable.
cmd/jujud: rationalise machine & config handling in upgrade tests

These tests have always been a bit confusing because machine-0 and its
config were being stored on the test suite, with various helper
methods magically using them as required. Data associated with other
machines have always been stored in local variables and passed around.

This change makes the data for machine-0 be handled consistently. This
makes for more explicit, clearer tests and has allowed for various
cleanups.
Merge branch 'master' into lp-1336843-wo-jenv-destroy-env
apiserver: fix vet warning (missing arg)
state: Fix envuser test

Fix intermittent failure by updating DateCreated check to equal 'now'
or 'after now'.
api/client: RetryProvisioning takes a Tag not a string

As it says on the tin.
dependencies.tsv: update juju/testing depdendency

Updated to fix a bug that showed up in #725
Merge branch 'master' into lp-1336843-wo-jenv-destroy-env
Merge pull request #682 from katco-/lp-1336843-wo-jenv-destroy-env

Bootstrapping an existing environment with no .jenv file no longer destr...

https://bugs.launchpad.net/juju-core/+bug/1336843

Tests are not yet written as there will be much overlap with another PR which is yet to land. I will not merge this without tests.
Merge pull request #715 from mjs/upgrade-sync-test-refactoring

cmd/jujud: upgrades test refactoring

A bunch of refactoring of the tests relating to machine agent upgrades.
Merge pull request #721 from waigani/fix-envuser-test

state: Fix envuser test

Fix intermittent failure by updating DateCreated check to equal 'now'
or 'after now'.
simplify, thanks axw
Merge pull request #725 from davecheney/196-api-client-retry-provisioning-takes-a-tag

api/client: RetryProvisioning takes a Tag not a string

As it says on the tin.
Merge pull request #727 from davecheney/197-update-juju-testing-dep

dependencies.tsv: update juju/testing depdendency

Updated to fix a bug that showed up in #725
Merge pull request #719 from axw/apiserver-tools-log-vet

apiserver: fix vet warning (missing arg)
Factor out cmd testing helpers.