title: Knockout binding doesn't update using array of simple observables
body: <p>I have a list of strings in my view model.  To edit them, I want each to appear as an <code>&lt;li&gt;</code> with a textbox, and a <code>&lt;button&gt;</code> to remove the item.  So, for the list <code>['A', 'B']</code>, I want something like this:</p>
  
  <pre><code>&lt;ul data-bind="foreach: titles"&gt;
      &lt;li&gt;
          &lt;input value="A" data-bind="value:$data" /&gt;
          &lt;button data-bind="click: $root.remove"&gt;remove&lt;/button&gt;
      &lt;/li&gt;
      &lt;li&gt;
          &lt;input value="B" data-bind="value:$data" /&gt;
          &lt;button data-bind="click: $root.remove"&gt;remove&lt;/button&gt;
      &lt;/li&gt;
  &lt;/ul&gt;
  &lt;button data-bind="click: add"&gt;add&lt;/button&gt;
  </code></pre>
  
  <p>I can create that initially, but am not getting updates to the values to reflect in the view model, and can't get the remove buttons working.</p>
  
  <p>I initially had an <code>observableArray</code> of plain strings, then updated to an <code>observableArray</code> of <code>observable</code> strings.  With the plain strings, the remove button worked, but it, predictably, didn't update the view model.</p>
  
  <p><strong>I've setup a JS fiddle with the issue fairly isolated: <a href="http://jsfiddle.net/bdukes/uvyH3/2/" rel="nofollow">http://jsfiddle.net/bdukes/uvyH3/2/</a></strong></p>
  
  <p>If there's an established or better way of doing this, I'd love to know.</p>
  
  <p>Also, as an unrelated (and less important) issue, the <code>stringifyJson</code> utility always seems to give me empty results for each item in the array.</p>