Bootstrap Endpoint Address

After Bootstrap returns successfully, get the bootstrap instance and
write its addresses to jenv/environ info/connection info (choose
your name).
Because it used connectionInfoForName. I'll refactor and move it to 
bootstrap.

> In cmd/envcmd/environmentcommand.go:
>
> > @@ -170,6 +170,47 @@ func (c *EnvCommandBase) ConnectionEndpoint(refresh bool) (configstore.APIEndpoi
> >  	return info.APIEndpoint(), nil
> >  }
> >
> > +// SetBootstrapEndpointAddress writes the API endpoint address of the
> > +// bootstrap server into the connection information. This should only be run
> > +// once directly after Bootstrap. It assumes that there is just one instance
> > +// in the environment - the bootstrap instance.
> > +func (c *EnvCommandBase) SetBootstrapEndpointAddress(environ environs.Environ) error {
> > +	instances, err := environ.AllInstances()
> > +	if err != nil {
> > +		return err
> > +	}
> > +	if len(instances) == 0 {
> > +		return nil
> > +	}
> > +	bootstrapInstance := instances[0]
> > +	info, err := connectionInfoForName(c.envName)
>
> I'm being stupid. I didn't expect this method to be in the envcommand 
> file.
>
> Why is it not just in the bootstrap file? That is the only place that 
> will ever call this?
>
> —
> Reply to this email directly or view it on GitHub 
> <https://github.com/juju/juju/pull/519/files#r16275685>.
>