Use promise object to call options-provided callbacks in Collection.sync()