I've managed to display a list:
this.checkAttributes = {
		property: "value",
		trueValue: "ON",
		falseValue: "OFF",
		fieldName: 'checkboxstuff'
	this.checkModel = {
		value: "ON",
		disabled: false
	this.controller.setupWidget('complete', this.checkAttributes, this.checkModel);

	this.model = {
		items: [
			{recnum: 1, myString: "Mary", isHappy: true},
			{recnum: 2, myString: "Joe",	isHappy: false},
			{recnum: 3, myString: "David",isHappy: true},
		listTitle: [$L('Names')]

	listAttributes = {
		itemTemplate: 'main/search-result',
		listTemplate: 'main/result-list',
		formatters:{myData: this.setMyData.bind(this)}
	this.controller.setupWidget('results-list', listAttributes, this.model);
The above code works and the list is displayed with the name and the checkbox.

Now, later in the code, I want to update this list but I'm confused as to how to do it. I have the data in the array returnedData and I've verified that it's there correctly. To update the list on the screen, I took some code snippet from a post in another forum and tried to modify it for my use, but I don't really understand everything so I'm apparently doing something wrong.
var n = returnedData.length;
	console.info("number of items="+n);

    var string = "";
    var row;   

	for (var i = 0; i < n; i++) {
         var vname = returnedData[i][0];
         string = {myString: vname};
	this.controller.modelChanged(this.nameofModel, this);
The 2 things that need to be filled are "nameofobject" and "nameofModel". One way I can think of is to redo the setupWidget and setup new objects for the modelChanged call, but that seems incorrect. I'm stuck and can't figure out what the correct way is.