replace Model.enqueue with Object.observe-based async callback