Due to old design choices, we had the layout of:
```
| - storage
| - indexeddb
| - mod.rs
| - idb_thread.rs
| - engines/
| - webstorage
| - mod.rs
| - webstorage_thread.rs
| - engines/
```
I merged the `*_thread` file into `mod.rs`, since `mod.rs` is pretty
empty. This should be a better layout for when more threads are
introduced.
Testing: Refactor, none needed
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
Currently we use a single json file to hold all webstorage data. This is
bad; this json file would become slow to read or write to as the number
of origins and key/value pairs increase. This PR splits this into one
database per an origin, and uses sqlite3 instead of json. IndexedDB
already uses sqlite3, so no additionally dependencies are added.
Fixes: #36034
Testing: WPT
---------
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>