[lib] Store encrypted messages in Client DB
Summary:
Part of ENG-3100
This diff adds support for storing encrypted media messages in client db.
I didn't modify the ClientDBMediaInfo type - it still contains only photo | video. Deduction if it is encrypted is based on existence of the encryption_key property. This approach works well, but I don't have strong opinion on it, I can refactor if requested.
Depends on D7169
Test Plan: Added unit tests. Also modified keyserver to compose encrypted media messaes and checked if they're properly saved and restored on native.
Reviewers: kamil, atul, marcin
Reviewed By: atul
Subscribers: ashoat, tomek
Differential Revision: https://phab.comm.dev/D7170