Why did Core move from `BDB` to `LevelDB`? Why don't they use `SQLite` or move to `Redis` now? Is there a technical reason for this choice?