Update numpy SWIG typemaps for Python bindings

This removes the deprecation warnings with new numpy versions.

- Now numpy.i is just the version from the numpy repository, and
  numpy_extra.i has been added to contain additional numpy typemaps
  that are needed by OpenCMISS.

- The use of APPEND_TO_RESULT has been replaced with
  SWIG_Python_AppendOutput to be consistent with the original
  numpy.i file.

- Some use of const typemap arguments has been removed so that the
  numpy.i typemaps can be used unmodified.

Next time numpy.i needs upgrading it should hopefully be possible to just
replace it with the updated version.
Additional compiler checking for gcc 4.8+
Merge pull request #154 from adamreeve/python

Update numpy SWIG typemaps for Python bindings - Looks good Adam.
Merge pull request #156 from chrispbradley/master

Additional compiler checking for gcc 4.8+
Removing compiler warnings
Merge branch 'master' of https://github.com/OpenCMISS/cm
Fix input/output arrays with new numpy.i swig typemaps

- Apply extra numpy typemaps where the size is not const.

- With the new numpy API we can no longer modify the data pointer for an
  array but this is ok, by setting the size to zero numpy will not try
  to access data that it shouldn't.
Cleaning up more compiler warnings
Merge pull request #158 from adamreeve/python

Fix input/output arrays with new numpy.i swig typemaps
Merge pull request #159 from chrispbradley/master

Removing compiler warnings
Fixing runtime problems
Merge with trunk
Now runs Laplace