Add basic support for other sources in preparation for database backend.