Support for new status formatter: tabular.
Migrated formatter to its own file. Refactoring.
Merge branch 'master' into status-formatter-tabular

- Migrated FormatTabular to status_formatters.go.
- Migrated return error to github.com/juju/errors
- Removed debugging/panic in an impossible situation.
- Migrated towards use of stack-local byte-buffer rather than a heap-based pointer dereference.

Conflicts:
	cmd/juju/status.go
	cmd/juju/status_test.go
Made indentation level a constant for clarity.
Add tools-stream config to allow tools from different streams to be used
Fix the panic when no running environment.
Fix yucky code
Add deprecation warning
provider/openstack: don't fail if product-streams isn't defined

Fixes https://bugs.launchpad.net/juju-core/+bug/1371605
Merge pull request #809 from axw/lp1371605-provider-openstack-keystoneurl

provider/openstack: don't fail if product-streams isn't defined

Fixes https://bugs.launchpad.net/juju-core/+bug/1371605
Merge pull request #805 from wallyworld/tools-stream

Add tools-stream config to allow tools from different streams to be used
Merge pull request #759 from katco-/status-formatter-tabular

Status formatter tabular

https://docs.google.com/a/canonical.com/document/d/1olIjfnMIKPbNMmNBhfjwlnzdRvY-xBKygpIOhv7QIkE/edit
Merge pull request #806 from howbazaar/fix-status-on-non-running-env

Fix the panic when no running environment.
upgrades: add step to migrate tools to environment storage
Address review comments
upgrades: update toolstorage migration with tools-stream support