public void add( ChunkState state )
	{
		if ( !containsState(state) )
		{
			if ( states == null )
				states = new ChunkState[1];
			else if ( containsState(ChunkState.none) )
			{
				for ( int i=0;i<states.length;i++ )
				{
					if ( states[i] == ChunkState.none )
					{
						states[i] = state;
						break;
					}
				}
			}
			else
			{
				// expand 
				ChunkState[] newStates = new ChunkState[states.length+1];
				for ( int i=0;i<states.length;i++ )
					newStates[i] = states[i];
				states = newStates;
			}
			states[states.length-1] = state;
		}
	}