lib/garbler.go
func NewPasswords(reqs *PasswordStrengthRequirements, n int) ([]string, error) {
	var err error
	if reqs == nil {
		reqs = &Medium
	}
	if ok, problems := reqs.sanityCheck(); !ok {
		return nil, errors.New("requirements failed validation: " + problems)
	}
	e := Garbler{}
	passes := make([]string, n, n)
	for i := 0; i < n; i++ {
		passes[i], err = e.password(*reqs)
		if err != nil {
			return nil, err
		}
	}
	return passes, nil
}
func NewPasswords(reqs *PasswordStrengthRequirements, n int) ([]string, error) {
	var err error
	if reqs == nil {
		reqs = &Medium
	}
	if ok, problems := reqs.sanityCheck(); !ok {
		return nil, errors.New("requirements failed validation: " + problems)
	}
	e := Garbler{}
	passes := make([]string, n, n)
	for i := 0; i < n; i++ {
		passes[i], err = e.password(*reqs)
		if err != nil {
			return nil, err
		}
	}
	return passes, nil
}
//Generate n passwords that meet the given requirements