Currently bbolt only returns error to caller. It should support printing log message as well. We can follow the same way as raft does, - [x] Define a [Logger interface](https://github.com/etcd-io/raft/blob/4967cffe43c1b5c369bc571fb6e80750978007f2/logger.go#L25-L43), and the caller can pass into any implementation they like. - [x] bbolt implements a default implementation if users do not pass in any logger implementation. - [x] Add log messages. e.g. all error cases should have an error message.
Currently bbolt only returns error to caller. It should support printing log message as well.
We can follow the same way as raft does,