state: make InferEndpoints take varargs

Most of the callers, usually the tests, were having to construct a []string, just to satisfy the contract of the method.

Make the method take a varargs ...string which is consistent with other Relation methods.
Added versions to Agent API.
Added forgotten params.
Merge branch 'master' of https://github.com/juju/juju into agent-api-new-version-for-networker
Merge branch 'master' of https://github.com/juju/juju into agent-api-new-version-for-networker
implemented the sender worker for metrics
added test and comments after first round of reviews
second round of of review, support bulk calls in setting sent,
added more mocking in tests
support bulk calls in the sendmetrics api call
updates after merging with trunk
Added new status format option: oneline to list units & their subordinates.
Revert "Added new status format option: oneline to list units & their subordinates."

This reverts commit 6841d5c80f68bbfc36da088f2d9c987300c64b1f.
Merge branch 'master' of https://github.com/juju/juju
Added new status format option: oneline to list units & their subordinates.
Migrated formatter to its own file. Refactoring.
Merge branch 'master' of https://github.com/juju/juju
Changes from 3rd round of reviews
Wire up placement directives to EnsureAvailability api
Fix facade version detection
Code revew fixes
Rework how support for legacy installs is handled