Initialize well rates better.

Instead of making well rates zero for wells that are not controlled by
surface volume, we initialize them to a small value with the correct
sign (positive for injectors, negative for producers).
Commented choices in initialisation of well rates.
Assert to avoid future surprises.

Well types must be either INJECTOR or PRODUCER for now, if
we change this in the future, we should check this part of
the code as well.
Bugfix: || -> &&
Removed cpos = ~cpos constructions for closing a well; using well_controls_shut_well explicitly instead.
SimulatorTimer: rename currentTime() to simulationTimeElapsed()

because the name "currentTime()" can be mistaken for the point in
real-life time at which the simulation is run (e.g. March 11, 2014,
15:07:45.123), the _point_ in time which the simulator timer currently
represents (e.g. Jun 5, 1985, 02:33:12.345) instead of the simulator
time in seconds which elapsed since the START date
(e.g. 52633.345 s).

this rename may lead to some fallout in other modules. I'll
fix them after this PR has been merged...
Will check if a well is open before throwing for an invalid control.
Apply changes from commit a953ba8 to new parser code too.

The mentioned commit was applied before the merge of
opm-parser-integrate and therefore the changes did not carry over
to the code that uses the new parser. This code mimics the
changed behaviour for the new parser.

Closes issue #516
Fixed missed on occurence of number of samples
initStateFromDeck(): do not accept potentially contradicting ways to set the initial condition

i.e. PRESSURE and EQUIL are now considered mutually exclusive...
Merge pull request #511 from andlaus/initStateFromDeck_reverse_PRESSURE_and_EQUIL

initStateFromDeck: reverse the priorities of the PRESSURE and EQUIL keywords
Read keyword PLYSHEAR.
Merge pull request #514 from joakim-hove/wells-cpos-manipulation

Removed cpos = ~cpos constructions for closing a well
Fix logic related to open/shut wells initialisation.
Merge pull request #520 from qilicun/plyshear

Read keyword PLYSHEAR.
some cleanups for EclipseWriter

- the output=true|false parameter gets respected now
- if output is "true", it is checked that the value of the
  "output_dir" parameter is a directory (although I did not find an
  easy way to check whether it is writable short of writing a file to
  it.)
- the "output_interval" parameter gets respected as well
- the index of a written timestep is now independent of the time step
  index of the simulation: the initial solution is always 0, the first
  result written to disk is always 1 and so on... (i.e., it does not
  matter anymore how many steps the simulator needed between two writes)

these changes have been proposed by @atgeirr. Thanks!
Merge pull request #508 from atgeirr/adjust-initial-wellrates

Adjustment to well rate initialisation.
Made single-argument constructors explicit.

Avoids unintended implicit conversions.
Merge pull request #522 from atgeirr/explicit-constructors

Made single-argument constructors explicit.
Merge pull request #515 from andlaus/EclipseWriter_cleanups

Eclipse writer cleanups