Added abstract class BlackoilPropsAdInterface.

Also made BlackoilPropsAd (the class wrapping opm-core BlackoilPropertiesInterface)
inherit from it.
Make ImpesTPFAAD use abstract fluid interface instead of template.

Follow-up changes to test program. Also while there, input correct
number of perforations to add_well() calls.
collapseJacs(): Don't assume column-major ordering

The 'InnerIterator' is ordering agnostic, so there is no need to
assume that the Jacobians are stored in a particular ordering.
Fix error in testcase specifying well prod. factors.

Also switch back to surface volume controls.
Merge remote-tracking branch 'atgeirr/master'
Moved DerivedGeology class to GeoProps.hpp.

Also, it is no longer a template (but its constructor is).
ImpesTPFAAD is no longer a template class.
Moved implementation of class ImpesTPFAAD to separate file.

Also cleaned up header usage in ImpesTPFAAD.hpp, making some
new inclusions necessary in test program.
Now computeFluxes() also sets well quantities.

Namely well_state.perfRates() and well_state.perfPress().
In the process, some overloads of fluid methods were added to
take V arrays instead of ADB arrays.

Simultaneously, coarsened tolerances a bit. Still hardcoded, though.
Added simulator class and program using ImpesTPFAAD.

This copies similar code from opm-core and replaces
CompressibleTpfa with ImpesTPFAAD. Produces same results
for initial simple test cases.
Merge remote-tracking branch 'atgeirr/master'
Add gravity() method.
Moved some calculations to computeExplicitData() method.
Fix initialization issue with gpot_.
Removed qs from the set of primary variables.
Merge remote-tracking branch 'bska/master'
Merge pull request #3 from atgeirr/master

Multiple improvements to ImpesTPFAAD