Externalpackages: out into astrid-r1b

Get a wiki together. OpenAD. Get ISSM website together.
https://trac.mcs.anl.gov/projects/ADIC/wiki/ADIC/ISSM

Switch to metis 5.0

Hard stuff: 
wrap MatSetValues and MatAssembly into one routine. 
To do so, store Ke matrices into elements, do not add to global. 
Once all the Ke are built, loop through them and do all the MatSetValues
at once, followed by MatAssembly. 
Do the same for VecSet and VecAssembly.

Wrap all Petsc data types Matrix and Vector objects, and map all operations 
onto these new objects.  Make this preprocessable for configuration using autotools.
We will probably duplicate data, ex: 

Matrix{
	ifdef  PETSC_WRAPPER
	Mat pmatrix; 
	endif
	ifdef  DOUBLE_WRAPPER
	double* pmatrix; 
	endif
	adouble* amatrix;
}

amatrix will be used in adolc. pmatrix will be used in Petsc routines. Matrix will 
have routines to map one into the other.


Ad: 
Eric: 
Create ISSM namespace.
Make Matrix Assembly one homogeneous block.
Make Validation suite for Jean for his prognostic capabilities.
Jean: 
typedef all double to ISSM_DOUBLE 

Create an alloc layer with template functions for new and delete.
Check that the new code  is modular --without-kml, options are up to date.

Replace memcpy, realloc with x layers.  Replace all calls to malloc and free in the code.
