In oomph-convert report which file can't be opened in error message
Rename TElement::NodeOnFace to Node_on_face to match conventions
Add get_bulk_node_number function for TElements

Get the number in the bulk element of nodes on the face. Basically just
an access function to Node_on_face.
In adaptive unsteady newton make REJECT_TIMESTEP a bool

Because it is a bool...
In fpdiff.py add calculation of maximum error and largest wrong value

Makes it easier to distinguish real problems from floating point errors.
In fpdiff.py handle IO Errors better

* When run as a script exit with non-zero status and print message

* When run from inside python throw an exception as normal

* Done by catching exception in run as script wrapper function
In explicit predictor calculation loosen tol on time paranoid check

(was often failing due to numerical errors)
Make get_dofs(...) functions const
Reorder time stepper/problem actions_after_implicit_timestep()

Needed to make my midpoint stuff work.

However the calling orders are now asymmetrical in time... Needs more
thought before it goes into core oomph-lib!
Make shift_time_values() virtual

So it can be overloaded in my semi-implicit problems.
In MidpointMethodByBDF also shift pinned values in update step

* This implementation of midpoint rule uses a BDF1 step to the midpoint
  followed by an algebraic update to get to the end of the time step.

* The update should probably be applied to all values, but was only
  working on dofs before.

* Shifting pinned values is still optional in case it breaks something.
In parallel_self_tests.py improve detection of hlib tests

Prevent it from detecting "oomphlib" as containing hlib in
check_if_hlib_driver().
Add magic number for pinning only for a segregated solve

Having a separate number to normal pinning allows us to easily undo the
segregation at the end of the solve.
In explicit time stepping move f calculations inside actions_before...

Otherwise we can have issues with segragated solves where values aren't
correctly pinned for the first f evaluation.
In Problem::calculate_predictions() fix unused variable warning

(Needed PARANOID flags)
Add option: crash if a Newton step fails even inside adaptive time step
In SumOfMatrices rename maps and add access functions
In problem add function to set history values of dofs
Add output operator for Data objects
Rename Explicit_solver_pt to Mass_matrix_solver_pt