Add generic version of getXxxValue

This allows us to call getIntegerValue/getFloatingPointValue from
generic code where the type to be used is a template parameter.
Replace data series handling with RAII type

The EclipseKeyword class takes care of cleaning up the handle after we
are done using it, and provides several convenience constructors that
make the code read easier.
Replace file name handling with RAII type
Centralize all time conversion

Remove duplicate code into a common helper function
Replace grid construction with RAII type
Make grid writing part of the grid type
Replace init setup with RAII type
Replace restart and solution handling with RAII type
Replace summary variables with RAII type
Remove now unused member holding starting time

If we restart from a later time, then the SimulatorTimer should be
restarted in that state as well, so it is already always a reflection
of how far we've progressed in the input file's schedule.
Updated copyright statement at top
Coalesce called methods into init and timestep
Remove dependency on ERT in header
Trim needless header includes
Conditionally use input file

If config.h is written, then the build system will also define
HAVE_CONFIG_H.
Initialize writer with directories gotten from params
Correct parameter sequence

ecl_grid_alloc_GRDECL_kw takes zcorn first, then coord (slightly
unintuitive if you ask me), and this is also the order that is used
in EclipseGrid::make; thus, the order should be consistent through
the constructor also.
Eliminate dependency on UnstructuredGrid

The only thing it was needed for was the number of cells in the grid,
and the Cartesian dimensions, and those are already available from other
structures.
Explicitly mention template parameter for base class

GCC 4.4 doesn't understand that EclipseHandle (without template
parameter) is supposed to refer to the base class and not a field.
Hide internals in its own namespace

If we put them in the anonymous namespace, then we cannot have a
reference to the types in the header (because that would mean different
things in each compilation unit).