Esmf conserve

**==DO NOT MERGE==**
This is just a first attempt.

It will not check out yet, as we need ESMF/ESMPy available to travis.
As @pelson suggested to me, we should seek engagement from the authors before doing this, as travis will not access private repos (so it needs to be put up in a public form).

It *should* work once you have installed ESMPy.  I have a site-specific script for that, if you need it.

More importantly, what it does not yet do ..
  * 2d cubes only -- no additional dimensions
  * no handling of auxiliary coords or factories
  * no support for curvilinear (2d) coordinates
  * some known problems with odd testcases, which for now have known-failures coded into the tests (cf. test_global_collapse and test_single_cell)
  * some other odd testing cases seemed to cause low-level ESMF errors.  May need work to identify certain specific problem cases + raise more intelligible warnings

More testcases maybe needed :
  * irregular grids
  * simpler missing-data cases (non-rotated), with 'obvious' results to check