10863: internal: build per-block `ItemTree`s r=Veykril a=jonas-schievink
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/7717
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8911
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8614
`ItemTree`s are now flat lists of items, so they should probably be renamed at some point.
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>