adding an example utilizing sparsity pattern
PetscOptionsInsertFile: combine Bcasts for alias and values

This is an attempt to work around a BG/Q bug in which some sequences of
collectives deadlock.  This packs the options aliases and values into a
packed buffer that can be communicated with a single MPI_Bcast.

Suggested-by: Vitali Morozov <morozov@anl.gov>
Merge branch 'master' into barry/wirth-fusion-materials

Conflicts:
	src/ts/examples/tutorials/advection-diffusion-reaction/ex10.c
removed zero reaction rate terms from nonzero structure and matrix
added support for dfill for DMCreateMatrix_1d_MPIAIJ for DMDA
RHSJacobian for ex10 now computes correct locations for entries
fix for TSGetRHSMats_Private() in the creation of the Arhs and Brhs matrices; they should be the same matrix in general
updated ex10.c example to compute the full Jacobian of the Ifunction explicitly in closed form
MatDuplicate_SeqAIJ() could fail on the B matrix in a MPIAIJ matrix because the original blocksize may not apply to the B matrix once it has been "shrunk" for the matrix-vector product. Therefor only preserve blocksize if it is still valid.
converted dfill computation to use variable names instead of chasing indices
clean up ex10.c code slightly
remove MatSetValuesP() from ex10 and match the still of GetDfill() setting row and column indices directly
parse data file
started adding support for different number of cluster sizes for different species in ex10
only tested with all sizes set to the same value
tested ex10.c for different combinations of cluster sizes
clean up of comments in ex10.c example
damn damn damn
allow different max for V in HeV then for He
allow variable length NHeV[] in ex10.c
reworked ex10.c to support the tungsten.txt file requires for each V a maximum He instead of for each He a maximum V
make ex10 pretty again and remove nodissassociation and noreactions