database:
remove multi-database support
change `DatabaseBackend` as a interface
db_struct:
change some fields to `map` type
yaml_db:
refactor to implement the `DatabaseBackend` interface
add some lock changes
move auto save as a single goroutine