configure: also set the CMAKE_C*_FLAGS_DEBUG and CMAKE_C*_FLAGS_RELEASE of CXX_FLAGS is specified

for me, setting only CMAKE_CXX_FLAGS did not do the trick when I was
trying to compile everyting with libstdc++'s debug mode enabled. (it
caused linker errors because opm-parser was not linked against
std::debug in this case.) Maybe I got something wrong, though...
Merge pull request #279 from andlaus/set_more_flag_variables

configure: also set the CMAKE_C*_FLAGS_DEBUG and CMAKE_C*_FLAGS_RELEASE ...
Add new constructor taking a Deck.

The new constructor allows us to create EclipseGrid objects from decks
that do not have a strict sectioned structure.

Also modify some implementation details. Many methods are now templates,
and can take Deck or Section objects (they have the same
hasKeyword/getKeyword interface).
Allow DIMENS to be used as well as SPECGRID when no sections are found.

Also refactor DIMENS/SPECGRID to dimension code as a function.
Added test case for construction from deck with no sections.
Create pointer-to-const objects.

Older gcc (4.4) does not allow conversion of shared_ptr<Foo> to
shared_ptr<const Foo>. Pointed out by @bska.
Remove section-using EclipseGrid constructors.

Also:
 - Simplify implementation (no templates).
 - Update tests.
relax strictness of the section handling and fix/work around a few bugs

We now do not require the sections to be correctly ordered and the
presence of the mandatory sections since even the unit tests did not
always specify all mandatory sections, which lead to a section
containing the rest of the deck if one of the expected next sections
was not specified.

also it seems like the DeckKeyword::getDeckIndex() does not correctly
work in some situations which lead

assert(deck->getKeyword(i)->name() == startKeyword);

to fail in the Section::populateKeywords() method. now the deck is
always sequentially traversed to find the position of a section's
start keyword. (This is necessary anyway if one wants to make sure
that the deck does not specify the same section more than once, a
feature which this patch also adds.)
considerably extend the unit test for sections

for this, an Section::isDeckValid() method is introduced which checks
that a given deck is valid when it comes to the sections
(i.e. presence of mandatory sections and section ordering)
Merge pull request #283 from andlaus/fix_section_handling

relax strictness of the section handling and fix/work around a few bugs
Merge pull request #284 from atgeirr/new-eclipsegrid-constructor

Add new EclipseGrid constructor taking a Deck.
Fix the NullStream class.

It is the std::streambuf that should be inherited from.
The NullStream class is just a convenience class.
Merge pull request #286 from atgeirr/fix-nullstream

Fix the NullStream class.
Updates to ParserItem::equal()

 1. The boolean flag m_defaultSet() is included in the actual
    comparison.

 2. The compare functions is implemented as a functions template.
Implemented ParserxxxItem::scan() with template
Changed defaultApplied bool to enum

We now have an enum which can keep track of three possible states for
the data in a deck item:

  VALID   : A valid value has been set
  DEFAULT : The default value has been applied
  NOT_SET : The value has not been set.

The intention is to throw if/when a DeckItem with status == NOT_SET is
accessed.
Changed default handling in ParserItem

This is the first of several large commits changing several aspects of
the handling of defaults. The overall main purpose of these changes is
to protect against using non sensible values in the case the values have
not been sensibly specified in the deck. The changes in this commit
include:

 1. The "default default" values to be used when an item without an
    explicit default are defaulted are removed completely.

 2. If a ParserItem is queried for a default value when no default has
    been assigned it will raise an exception.
Default: Updates to the scan routine.
Default: replaced DeckItem::defaultApplied -> setInDeck()
Default: DeckItem will throw if you ask for missing data