Fix PETSc install instructions

Change the install instructions, as well as the install script and the
requirements, to point to our branches of petsc and petsc4py.
Merge pull request #408 from OP2/updated_petsc_install

Fix PETSc install instructions
/petsc/ -> /mapdes/ for petsc4py instructions
Add option to run compiler using os.system

On some systems (notably HPC machines) subprocess.check_call can result
in segfaults.  A somewhat safer option is to use os.system instead.  Set
the configuration option "no_fork_available" to True, or the environment
variable PYOP2_NO_FORK_AVAILABLE to 1 to enable this approach when
compiling code at runtime.
Merge pull request #409 from OP2/no-subprocess-call

* no-subprocess-call:
  Add option to run compiler using os.system
  Report original error message in CompilationError
  Fix logfile destination for split compile/link
Add support for "local" par_loops

If we pass the flag only_local=True to a par_loop it will only compute
over owned set entities (even in the case of indirect loops).  Once the
computation has finished, Dats accessed via INC perform a halo exchange
to /gather/ remote increments into their local data.

Such loops only make sense if none of the Args are Mats and if Dats are
only ever accessed as either INC or READ, errors are raised in other
cases.
Set: maintain sizes as a single tuple

Rather than having a different slot for each of core, non_core, exec and
non-exec Set sizes, just use the tuple we were passed in and index
appropriately in the public properties.
Introduce new LocalSet type

A LocalSet wraps a Set and indicates that iteration should only occur
over owned set elements.  A par_loop iterating over such a set carries
out a reverse halo exchange at the end of computation to ensure that all
INC Args are up to date.
Allow par_loops on LocalSets to have WRITE Args

The user guarantees that the write from either "side" would have been
identical anyway, so we can assume that the local write was complete and
correct, and there's no need to force a halo exchange.