src/defineReact.js
function() {
		// extending doesn't really work well here, so instead we create an internal instance
		// and just loop through its properties/methods and make a getter/setter for each
		// that will actually be getting and setting on that internal instance.
		this.__store__ = Reflux.createStore();
		this.state = {};
		var self = this;
		for (var key in this.__store__) {
			/*jshint loopfunc: true */
			(function (prop) {
				Object.defineProperty(self, prop, {
					get: function () { return self.__store__[prop]; },
					set: function (v) { self.__store__[prop] = v; }
				});
			})(key);
		}
	}
function() {
		// extending doesn't really work well here, so instead we create an internal instance
		// and just loop through its properties/methods and make a getter/setter for each
		// that will actually be getting and setting on that internal instance.
		this.__store__ = Reflux.createStore();
		this.state = {};
		var self = this;
		for (var key in this.__store__) {
			/*jshint loopfunc: true */
			(function (prop) {
				Object.defineProperty(self, prop, {
					get: function () { return self.__store__[prop]; },
					set: function (v) { self.__store__[prop] = v; }
				});
			})(key);
		}
	}
--------- BEGIN Reflux.Store ------------ 
Reflux.Store:
Also implements optional Reflux.Store class that is idiomatic with
the React ES6 style. You extend Reflux.Store and then the rest works
the same as createStore, except the constructor instead of init, and
it holds state in a state property, and a .setState method is available
which automatically updates state and does a trigger. Then when using
with this.store or this.stores in an ES6 component just plass the class,
it will deal with a singleton instantiation of the class automatically.