func (kv *KV) SetEventFunc(ef func(db.Event)) {
	kv.eF = ef
}
SetEventFunc supplies the event firing entrypoing for this
implementation.
package memory
import (
	"path"
	"strings"
	"sync"
	"github.com/hashicorp/go-hclog"
	"github.com/netauth/netauth/internal/db"
	"github.com/netauth/netauth/internal/startup"
)
type KV struct {
	sync.RWMutex
	m map[string][]byte
	l hclog.Logger
	eF func(db.Event)
}
func init() {
	startup.RegisterCallback(cb)
}
func cb() {
	db.RegisterKV("memory", NewKV)
}
func NewKV(l hclog.Logger) (db.KVStore, error) {
	x := &KV{
		RWMutex: sync.RWMutex{},
		m:       make(map[string][]byte),
		l:       l.Named("memory"),
	}
	x.l.Debug("Initialization Complete")
	return x, nil
}