+ struct cellData grid[][]. This is a MUCH more organized way to approach storing the grid Data.

Now, the material at [i][j] in our grid is collected in one package:

material:		grid[][].mat
saturation:	grid[][].sat
sat Level		grid[][].satLevel

there are corresponding "Change" elements for each of these three elements

grid[][].matChange
grid[][].satChange
grid[][].satLevelChange
+ picture of water generation. water gets absorbed by dirt once again.
severe preformance increase. I have still not started working on sat levels xD

I made it so that M_air is not checked for decay/affectMaterials.

Also, evaluate_effectMaterial() will reject anything that has M_air as it's matBefore and matAfter.
added another preformance increase feature to the features-
ideas.txt
added picture and an idea
started working on the brush gui
added cool picture
+ saturation levels. Big step. removed the affectMaterials structures in the SaturationEffect structures. it was unnecessary.

There are most likely some bugs with this (I am writing this at 2am in the morning)
but the system seems to be up and working!
you now require a certain level of saturation to achieve your affectMat.

also, now there are no AffectMats in the satEffect structure. you simply have to describe what material triggers your affectMaterial in the element of the affectMaterial structure called "satNeeded". it is all there in the comments.
+ saturation level dependent decay.

there are two new structure elements that I made

+ satEffect[].decaySatGTE
+ satEffect[].decaySatLTE

the saturation level has to be greater than or equal to decaySatGTE in order for the material to decay.
the saturation level also has to be less than or equal to decaySatLTE in order for the material to decay.
changed picture
removed pointless picture.
Merge branch 'gui2' into gui_satlevels