func Key(k string) func(*Options) {
	return func(e *Options) {
		e.key = k
	}
}
Key Sets the ssh key filename used to authenticate
package exec
import (
	"bytes"
	"fmt"
	"golang.org/x/crypto/ssh"
	"golang.org/x/crypto/ssh/agent"
	"io/ioutil"
	"net"
	"os"
	"time"
)
type Options struct {
	machines    []string
	port        int
	user        string
	cmd         string
	key         string
	agentSocket string
	useAgent    bool
}
type executeResult struct {
	result string
	err    error
}
func User(u string) func(*Options) {
	return func(e *Options) {
		e.user = u
	}
}
func Port(p int) func(*Options) {
	return func(e *Options) {
		e.port = p
	}
}
func Cmd(c string) func(*Options) {
	return func(e *Options) {
		e.cmd = c
	}
}
func Machines(m []string) func(*Options) {
	return func(e *Options) {
		e.machines = m
	}
}