remove all items in dstore

Why doesn't this delete all the items in a dstore? (see the console for the error "cannot read property '_id' of undefined")

HTML

<div id="usersGrid"></div>
<button id="reset">Remove All</button>

CSS

body {
  font-family: sans-serif;
}

JavaScript

require({
  packages: [{
    name: 'dgrid',
    location: '//cdn.rawgit.com/SitePen/dgrid/v0.4.0'
  }, {
    name: 'dstore',
    location: '//cdn.rawgit.com/SitePen/dstore/v1.0.0'
  }, {
    name: 'xstyle',
    location: '//cdn.rawgit.com/kriszyp/xstyle/v0.2.1'
  }, {
    name: 'put-selector',
    location: '//cdn.rawgit.com/kriszyp/put-selector/v0.3.6'
  }]
}, [
  'dojo/dom',
  'dojo/on',
  'dojo/_base/declare',
  'dgrid/OnDemandGrid',
  'dstore/Memory',
  'dstore/Trackable',
  'dojo/domReady!'
], function(dom, on, declare, OnDemandGrid, Memory, Trackable) {

  var TrackableMemory = declare([Memory, Trackable]);

  var data = [{
    _id: 1,
    name: 'jill'
  }, {
    _id: 2,
    name: 'bob'
  }, {
    _id: 3,
    name: 'nancy'
  }];

  var userMem = new TrackableMemory({
    data: data,
    idProperty: '_id'
  });

  var usersGrid = new OnDemandGrid({
    collection: userMem,
    columns: {
      _id: 'ID',
      name: 'Name'
    },
    className: 'dgrid-autoheight',
    noDataMessage: 'No records found'
  }, 'usersGrid');

  on(dom.byId('reset'), 'click', function(evt) {
    console.log('resetting');
    userMem.forEach(function(userObj) {
      userMem.remove(userObj._id);
    }).then(function() {
      console.log('successfully removed users');
    });
  });
});