title: javascript Scope issue in Ext.Ajax.request
body: <p>I have this class which automatically generates JSON stores from server. Stores are created on the fly and are viewable in Firebug's DOM.
  I think i have some scope issues.When i want to console.log(Ext.getStore('AdminSettings')) (which AdminSettings is one of the created stores) inside Ext.Ajax.request`s callback function, 'AdminSettings' store is returned but if i put console.log(Ext.getStore('AdminSettings')) everywhere outside callback function,i get undefined message in firebug and my store is not instantiated.
  See code comments to see it in action.  </p>
  
  <pre><code>Ext.Ajax.request({
  url : './account/getadminstores',
  callback : function(options, success, response) {
  var json = Ext.decode(response.responseText);
  var adminStores = new Array();
  // setup and intitialize on the fly stores
  for ( var key1 in json) {
  var storeFields = new Array();
  for ( var key2 in json[key1]) {// if (i==1){break;}
  for ( var key3 in json[key1][key2]) {
  storeFields.push(key3);}
  break;};
  Ext.define('MA.store.' + key1, {
  extend : 'Ext.data.Store',
  fields : storeFields,
  storeId : key1,
  data : json[key1]
  });
  Ext.create('MA.store.'+key1);};
  console.log(Ext.getStore('AdminSettings'));
  //returns MA.store.AdminSettings in firebug and everything is fine 
                  }
              });//eof Ext.Ajax.request
              console.log(Ext.getStore('AdminSettings'));
  //returns undefined which is strange
  </code></pre>