func Always() Action {
	return func(f func()) {
		f()
	}
}
Always returns a Do instance for always performing an action
package do
import "sync"
type Action func(func())
const (
	doneNever uint32 = iota
	doneOnce
)
func Once() Action {
	var state = doneNever
	var mutex sync.Mutex
	return func(f func()) {
		mutex.Lock()
		defer mutex.Unlock()
		if state == doneNever {
			defer func() {
				state = doneOnce
			}()
			f()
		}
	}
}