Remove unneeded dependencies from install instructions
Add installation instructions on Mac
Add table of contents to README
Merge pull request #371 from OP2/doc/mac_install

* doc/mac_install:
  Add table of contents to README
  Add installation instructions on Mac
  Remove unneeded dependencies from install instructions
Add a custom set implementation based on a vector

Based on the dolfin::Set implementation.
Use vecset instead of flat_set to build sparsity
Add methods reserve and capacity to vecset
Preallocate 13 entries per row when building sparsity
Preallocate set entries heuristically based on arity
No longer require boost
Remove flat_set Cython header file
Merge pull request #370 from OP2/sparsity-vector

Custom set implementation for building sparsity pattern
Remove explicit op2.exit call from Jacobi demo
Add -e flag for PETSc/petsc4py pip installations
Fix allocation error for s_odiag

We need lrsize, not lcsize rows.
Adapt preallocation heuristic to 6*arity
Stash optimisation options on kernel object
Fix identification of inner loops
Merge pull request #374 from OP2/fix-alignment

Fix identification of inner loops
More GCC bug workarounds

4.6 now produces bad code for some kernels unless we turn tree-vectorize
off.