SciTools/iris — pull request #511 by esc24 (2013-05-20 13:32:02+00:00)
Title: Resolved pickling issues with deferred loading.

When attempting to pickle a cube with 2d lats and lons loaded from netcdf I get a PicklingError:
```python

import pickle

import iris
import iris.tests as tests

filename = tests.get_data_path(('NetCDF',
'rotated',
'xy',
'rotPole_landAreaFraction.nc'))
cube = iris.load_cube(filename)
with open('bob.pkl', 'wb') as fileout:
pickle.dump(cube,fileout)
```
Leads to:
```pickle.PicklingError: Can't pickle at 0x10e858578>: it's not found as iris.fileformats._pyke_rules.compiled_krb.fc_rules_cf_fc.```

This is because the 2d auxiliary coords are loaded using LazyArrays which do not dispose of a reference to a function object after loading the points. Having fixed this I then hit:
```TypeError: a class that defines __slots__ without defining __getstate__ cannot be pickled```
due to an issue with the NetCDFProxy class.

This PR fixes these issues and allows me to pickle and unpickle this cube.