update models: add unread caches models & foreign key constraint
add 'update unread' command, merged updater.py into commands/update.py