Work on removing shared_ptr for PETSc Vec.
Small improvement to CH demo.
Fixes for simplified PETSc Vec handling.
Clear CMAKE_LIBRARY_PATH after python check
Save and restore instead
Remove shared_ptr for PETsc Mat.

Use PETSc reference counting.
Remove shared_ptr to PETSc KSP and SNES objects.
More work on PETSc reference counting.
Fix initialisation of PETSc nullspace object.
Remove more share_ptr for PETSc nullspaces.
Untested upates to Tao solver.
Fix PETSc KSP management inside wrapper.
Some more PETSc reference counting clean-up.
TAO updates for PETSc reference counting.
Add some missing asserts to Tao.
Update ChangeLog.
Merge branch 'garth/use-petsc-ref-counters' into garth/fix-issue-132

Conflicts:
	dolfin/swig/la/pre.i
Fix Issue #132.

This commit removes the copying, but shows up the design flaw that is GenericTensor::resize. GenericTensor::resize should be remove.
Merge branch 'garth/fix-issue-132'
Merge branch 'chris/fix-issue-189'