add numTables() method to the table classes

For SimpleTable, that is simply the number of records in a keyword, for
MultiRecordTables, it is the number of _empty_ records.

this patch makes supporting multi-PVT easier and cleaner.
add some comments to the capillary pressure retrival methods of S{g,w}ofTable

that's because the Eclipse capillary pressure definitions
inconsistent: SWOF specifies the "water-oil capillary pressure" as $p_o
- p_w$, while SGOF uses $p_g - p_o$ as the "oil-gas capillary pressure".
table tests: expand them considerably and actually run them

In the current version, the runTimeMapTest binary was run because of a
copy-and-pasto. oops.

Also, not all of the tests pass but that is because of another problem
of opm-parser for which I don't know a good fix: It currently seems to
be impossible to specify empty records if there are non-defaulted
items in the JSON keyword specification, but such empty records are
used as table separators by Eclipse...
rename SimpleTable to SingleRecordTable and SimpleMultiRecordTable to MultiRecordTable

because what's simple is in the eye of the beholder...
fix the "number of table" calculation for multi-record tables

It turns out that the empty-record detection worked fine, but that the
last empty record of a keyword is ignored by opm-parser for reasons
which are not clear to me...

Now all unit tests pass.
EclipseGrid: do not add integers to the addresses of const char* pointers

this results in funny error messages and (if the integers are large
enough) in segfaults. thanks to @atgeirr for pointing this out!
Merge pull request #205 from andlaus/EclipseGrid_fix_throws

EclipseGrid: do not add integers to the addresses of const char* pointers
Merge pull request #201 from andlaus/table_improvements

Table improvements
Added class OrderedMap which is insert-order preserving map.
Using OrderedMap to hold wells in Schedule object - thereby preserving
well insert order.