use PartDatabase to look up thumbnails async

Prevent excessive resource contention from generating two thumbnails for the same piece of media when sending/receiving into an open conversation.
I don't think we want to expose this so directly.