build: Fix dependencies for ADIOS objects.

I accidentally used ADIOS_PRESTUBS instead of ADIOS_PREOBJECTS, which
obviously uses the wrong object when building with ADIOS enabled.
Fix compile with ADIOS enabled.

Three issues:
* Some string constants were split without the join operator (//) between
  them.
* The error "Procedure 'read_model_vp_rho_adios' at (1) with assumed-shape
  dummy argument 'rho_read' must have an explicit interface".
* Some incorrect sizing of an array, followed by accessing unallocated
  indices, could cause a crash.
build: Fix rules for xmodel_update.

Missing some options for the include directory and linking with the
ADIOS libraries.
Fix serial build for optional programs.
build: Error if config with ADIOS but without MPI.

The documentation for ADIOS suggests it can be compiled in serial
instead of with MPI. However, it seems that this requires some fake
replacement constants to replace MPI stuff. Unfortunately, the dummy
wrappers that ADIOS provides don't appear to be available from Fortran,
so I'm just going to not allow it for now.
ADIOS: Stop if unable to open or read from file.

There's no need to print anything because the verbosity setting of ADIOS
means it will print out an error message itself.
build: Use consistent rules for building ADIOS files.

We should use *COMPILE_CHECK or else build options aren't the same in
all cases.

Also, change 'byte' type to 'integer(kind=1)', as the former is a GNU
compiler (and probably others) extension, and does not compile in
standards mode.
ADIOS: Use consistent naming for variables in files.

The 1.6.0 release of ADIOS is stricter about variable naming in files.
It no longer treats '/<id>' as '<id>', so we need to use the same name
when reading as when writing.
Merge pull request #88 from QuLogic/adios-build

Fix ADIOS build issues.