previously we just used a Go builtin map this was not safe for concurrent read/write and upon upgrading to Go 1.6 we were notified of the problem fixes #349