code: func (tx *Tx) Sign(signingAccounts ...acm.AddressableSigner) (*Envelope, error) {
  	env := tx.Enclose()
  	err := env.Sign(signingAccounts...)
  	if err != nil {
  		return nil, err
  	}
  	tx.Rehash()
  	return env, nil
  }
docs: // Encloses in Envelope and signs envelope