Add support for dehydrated devices
This will help resolve some edge-cases where UTD errors can arise in the following cases:
- All devices for a user have been logged out
- On room invite, MSC3061 key forwarding forwards old room keys to a user A's device 1. User A's device goes offline and User A creates device 2. Device 2 will not get the forwarded keys