Fix virtual destructor compiler warning

A 'delete' was called on a virtual object, Interpolator *p. Presumably,
p will actually point to a derived interpolator, say
CartersianInterpolator. In this case calling evoking a 'delete' on p
should call the destructor of the derived interpolator.
Use prepared polygon for containment check.
Simple adaption of boundary direction.
Use cached boundary/domain geometries.
Fix missing key
Merge pull request #78 from rhattersley/speed

Speed tweaks by @rhattersley
Merge remote branch 'upstream/v0.4.x'

* upstream/v0.4.x:
  Fix missing key
  Use cached boundary/domain geometries.
  Simple adaption of boundary direction.
  Use prepared polygon for containment check.
Fixed failing tests after merging 0.4.x into master.
Fixed testing when folders have an underscore
PEP8-ed all tests.
PEP8-ed cartopy mpl integration
PEP8-ed Remaining code.
Modify line splitting criteria outside the map domain.

Fixes #130.
Merge pull request #144 from rhattersley/polar-fix

Modify line splitting criteria outside the map domain.
Prevent attempts to create a LinearRing from a line.
Added test.
Merge pull request #132 from esc24/linear_ring_error

Prevent attempts to create a LinearRing from a line.
Review actions on PEP8 tests.
Merge remote branch 'upstream/v0.4.x'

* upstream/v0.4.x:
  Modify line splitting criteria outside the map domain.
More lenient end-point merging.