Return read only view of Global data from data_ro property
Merge pull request #375 from OP2/versioneer

Add version information using versioneer

The PyOP2 package version now includes the git revision as returned by
  git describe --tags --dirty --always

This means that users can easily include accurate version numbers with
bug reports:

  $ python setup.py --version
  0.10.0-391-g65c034c

and we can query PyOP2 programmatically for an accurate version number

  from pyop2 import __version__

The format is (dirty is set if the tree has uncommited changes)
  <release>-<number of commits ahead of release>-<git sha1>-<dirty>

When building tarballs (including getting them from GitHub) the right
version is baked in automagically using a git export-subst hook.
Default COFFEE configuration to GNU compiler / SSE ISA
Add context manager for timing a given code region
Profiling: add a Timer.reset method
Profiling: add timing method to get average time for task
Rename profile decorator to timed_function
Add timed region around sparsity building
Add timed region around PETSc KSP solve
Time ParLoop compute, halo exchange, reduction
Add configuration option to print summary at exit

Either set the print_summary configuration option or export
PYOP2_PRINT_SUMMARY
Profiling: get_timers can optionally reset all timers
Only add timer to global dict once it has been started
Wrap timed regions in try/finally
Make Timer.stop and toc return elapsed time