title: Extjs using store proxy api; CRUD
body: <p>Hi I have attempted to implement writer.js and I am getting an error: 
  Uncaught TypeError: Object # has no method 'read'</p>
  
  <p>here is a snippet of my code and would appreciate any help with this issue:</p>
  
  <pre><code>Ext.onReady(function(){
  
  var store = Ext.create('Ext.data.Store', {
      model: 'User',
      autoLoad: true,
      autoSync: true,
      proxy: {
          type: 'ajax',
          api: {
              read: '/orm_2/view/user/app/remote/app/controllers/users.php?action=view',
              create: '/orm_2/view/user/app/remote/app/controllers/users.php?action=create',
              update: '/orm_2/view/user/app/remote/app/controllers/users.php?action=update',
              destroy: '/orm_2/view/user/app/remote/app/controllers/users.php?action=destroy'
          },
          reader: {
              type: 'json',
              successProperty: 'success',
              root: 'USERS',
              messageProperty: 'message'
          },
          writer: {
              type: 'json',
              writeAllFields: true,
              root: 'USERS'
          },
          listeners: {
              exception: function(proxy, response, operation){
                  Ext.MessageBox.show({
                      title: 'REMOTE EXCEPTION',
                      msg: operation.getError(),
                      icon: Ext.MessageBox.ERROR,
                      buttons: Ext.Msg.OK
                  });
              }
          }
      },
      listeners: {
          write: function(proxy, operation){
              if (operation.action == 'destroy') {
                  main.child('#form').setActiveRecord(null);
              }
              Ext.example.msg(operation.action, operation.resultSet.message);
          }
      }
  });
  
  var main = Ext.create('Ext.container.Container', {
      padding: '0 0 0 20',
      width: 500,
      height: 450,
      renderTo: document.body,
      layout: {
          type: 'vbox',
          align: 'stretch'
      },
      items: [{
          itemId: 'form',
          xtype: 'writerform',
          height: 150,
          margins: '0 0 10 0',
          listeners: {
              create: function(form, data){
                  store.insert(0, data);
              }
          }
      }, {
          itemId: 'grid',
          xtype: 'writergrid',
          title: 'User List',
          flex: 1,
          store: 'UserStore',
          listeners: {
              selectionchange: function(selModel, selected) {
                  main.child('#form').setActiveRecord(selected[0] || null);
              }
          }
      }]
  });
  });
  </code></pre>