Replace python code by par_loop when constructing map from facets to dofs on facet

To make the code ready for parallel execution, replace the python loops in all methods that construct maps in the lumped BDFM1 mass matrix by par_loops. This commit does this for the direct map from facets to dofs on the facet.
Use unsigned int's

The dofs are non-negative, so use unsigned int's in the kernel.
Use parloop for building map from facets to adjacent vertices

Replaced the bumpy code by a pyop2 par loop in the method that constructs the map from facets to the dofs of the adjacent vertices.
Replace numpy by par loop in construction of map from facets to 4 dofs on facet

Final step in replacing the numpy code by par loops in the construction of redirection maps in the BDFM1 lumped mass matrix.
Loop over dof_dset of RT0 space instead of interior facet set.

Only the dof_dset's have halos, but not the interior facet set, so when building the maps in the BDFM1 lumped mass mass loop over dof_dset.set instead of interior facets. This also requires some modifications to the construction of the the diagonal matrix since we can not use the map from the interior facets to the adjacent DG0 dofs, and have to construct a map from the RT0 dof_dset instead. Code works sequentially, but currently not in parallel.
Removed unused variable definition
Update documentation: Lowest level Jacobi smoother

The bound for the diagonal matrix is not correct, so reverting to just using a Jacobi smoother (which is very similar). Implemented these changes for the documentation at lowest order.
Updated documentation for higher order case.

Also for the higher order case construct the block-diagonal matrix in the preconditioner directly from the diagonal of the Helmholtz matrix.
Implemented new diagonal scaling in Jacobi smoother.

In the Jacobi smoother divide by the diagonal of the original Helmholtz matrix.