public Block clone()
	{
		// Create a new block of random shape
		Block newBlock = new Block();
		
		for(int i = 0; i < BLOCK_SIZE; i++)
			for(int j = 0; j < BLOCK_SIZE; j++)
				newBlock.setValue(i, j, this.getValue(i, j));
		
		return newBlock;
		
		// Will newBlock be garbage collected once it is dereferenced outside of this method?
	}