Exception for wrong Region names.

- when region, id or region set of a filed is wrong we have to
  throw otherwise things goes wrong
Compute 1d-2d intersections directly.

- update creation of intersection obejcts in mesh
  we use ngh functions directly
- add to ngh classes constructors from element
- more general constructor for bounding_box
- use sigma field in assembly

State: compiles, runs, bad results
Linsys gets MPI_Communicator from Distribution.

- modify constructors, drop comm parameter
Add some const specifiers.

- big blocker for precise usage of const specifiers are lack of support
  in  sys_vector.hh
LinSys set_values with Dirichet constrains.

- method LinSys::set_values that automatically resolves Dirichlet
  constrains on rows and columns with negative indices. Do not work for
  index zero.

- minimalistic unit_test
Fix instability of BoundingBox::intersection

- has to use some safety factor to handle 1D and 2D
  elements aligned with axes

- BIH still do not work properly in such case
P0 noncompatible coupling

- fix Mesh::make_intersec_elements
- P0 coupling assembler object in darcy_flow_mh
  should theoretically work even for complex meshes.

Remaining problems:
- BIH tree - missing intersections
- do not detect Dirichlet sides
Extend and polish BoundingBox class

- inline most of methods
- remove set_bounds (use constructor instead)
- add methods: split, expand, longest_axis
- documentation
- full unit test
Fix usage of BoundingBox.

- use new bounding box interface
- simplification of BIGNode
- use queue of BoundingBox in BIH tree creation
- use new BoundingBox methods to simplify BIHTree
- BIHTree needs more testing yet
Armadillo optimization flag.

- use compile time flag to remove Armadillo bound checks
- complete HOWTO_test
Introduce exc_common.hh

- particular file for common exceptions
- debug stream DBGCOUT
- one variable debug DBGVAR