Rewrite UI to use AsyncDataModel

Notifications are gone because they're going to be different anyway, so
no point in restoring them as they were now.