Action supercommand

Use JUJU_DEV_FEATURE_FLAGS envar with an option for "action" to enable
this supercommand.

For example:

   export JUJU_DEV_FEATURE_FLAGS="${JUJU_DEV_FEATURE_FLAGS}, action"
address feedback on review

 - Test with and without feature flag
 - fixes for feedback trivials
 - don't use custom struct for action supercommand
 - use anonymous struct to serialize JSON
address review from ericsnow
don't include un-implemented commands
address more issues from the PR
add another TODO comment from review
Use IsolationSuite, and remove unused func (for now)
Merge pull request #1302 from juju-actions/cli-action-supercommand-pr

Actions :: CLI supercommand :: with feature flag

Initial supercommand for `juju action` 
Currently behind a feature flag so the `JUJU_DEV_FEATURE_FLAGS` envar should include a feature `action` to enable this supercommand.

(Review request: http://reviews.vapour.ws/r/616/)
action defined subcommand

  `juju action defined ...`
add patchAPIClient now that we need it
use jc.YAMLEquals
Merge pull request #1333 from johnweldon/actions-defined-pr

Actions defined

Implements 'defined' subcommand of `juju action`

Depends on upstream PR http://reviews.vapour.ws/r/616/

(Review request: http://reviews.vapour.ws/r/651/)
state: automatic multi-env handling for DB updates

Transaction operations that update collections that contain documents
for multiple environments are now automatically updated to include the
required environment specifiers.
Merge pull request #1291 from mjs/auto-env-uuid-for-txns

state: automatic multi-env handling for DB updates

Transaction operations that update collections that contain documents for multiple environments are now automatically updated to include the required environment specifiers.

(Review request: http://reviews.vapour.ws/r/605/)