include iostream in some files

this is needed because the new ErrorMacros.hpp file no longer
implicitly includes <iostream>.
replace BOOST_STATIC_ASSERT by C++-2011's static_assert
refactor the exception throwing code

This came out of a discussion with Atgeirr. The class hierarchy
defined now resembles the one of <exception> and <stdexception> plus
some minor additions like the NumericalProblem exception.
convert THROW to OPM_THROW
convert users of the ASSERT and the ASSERT2 macros to standard assert()
convert users of MESSAGE to OPM_MESSAGE
ErrorMacros: remove compatibility macros