anchor.diff:  
     // The table of groups on the right.
     var GroupsTable = React.createClass({
  -    groupCheckboxClicked: function(event) {
  -      var value = event.currentTarget.checked;
  -      var group_id = parseInt(event.currentTarget.getAttribute('id'));
  -      var new_selected_groups = this.props.selected_groups.slice();
  -      if (value == true) {
  -        new_selected_groups.push(group_id);
  -      } else {
  -        new_selected_groups.splice(new_selected_groups.indexOf(group_id), 1);
  -      }
  -      this.props.onSelectedGroupsChange(new_selected_groups);
  -    },
       studentCheckboxClicked: function(event) {
         var value = event.currentTarget.checked;
         var group_student_id = parseInt(event.currentTarget.getAttribute('id'));
  
positive.code:           });
          }.bind(this),
          error: function(xhr, status, text) {
            console.log("got error");
            var error = text + ': ' + xhr.responseText;
            this.setState({
              error: error
  
negative.code: 
    // Table of students, on the left.
    var GroupsStudentsTable = React.createClass({
      /*
      updateSelectedStudents: function(students) {
        this.props.onSelectedStudentsChange(students)
      },
      */
      render: function() {
        var columns = [
        {
  