Addresses issue #2927 .  Ability to bound variables during nonlinear solve.  Note, this only works for two phase problems at the moment - multiphase is not a difficult generalisation, but i have not yet worked out what actually needs to be done, and the user interface for the multiple kinds of bounding that are possible.  **THERE ARE POTENTIAL BUGS IN RichardsMultiphaseProblem.C REGARDING THREADS AND/OR PARALLELISM THAT I WOULD LIKE SOMEONE TO CHECK**