Backward propagation on FraunhoferPropagator fails
Minimal reproducing code:
```python
from hcipy import *

pupil_grid = make_pupil_grid(512, 1)
focal_grid = make_focal_grid(4, 16)
prop = FraunhoferPropagator(pupil_grid, focal_grid)

wf = Wavefront(circular_aperture(1)(focal_grid))
pup = prop.backward(wf)
```

Traceback:
```
Traceback (most recent call last):
  File ".\\test.py", line 8, in <module>
    pup = prop.backward(wf)
  File "c:\\users\\emiel por\\github\\hcipy\\hcipy\\optics\\optical_element.py", line 760, in res
    instance_data = self.get_instance_data(None, wavefront.grid, wavefront.wavelength)
  File "c:\\users\\emiel por\\github\\hcipy\\hcipy\\optics\\optical_element.py", line 632, in get_instance_data
    self.make_instance(instance_data, input_grid, output_grid, wavelength)
  File "c:\\users\\emiel por\\github\\hcipy\\hcipy\\propagation\\fraunhofer.py", line 38, in make_instance     
    instance_data.fourier_transform = make_fourier_transform(input_grid, instance_data.uv_grid)
  File "c:\\users\\emiel por\\github\\hcipy\\hcipy\\fourier\\fourier_transform.py", line 162, in make_fourier_transform
    if input_grid.is_separated and input_grid.is_('cartesian') and output_grid.is_separated and output_grid.is_('cartesian') and input_grid.ndim in [1,2]:
AttributeError: 'function' object has no attribute 'is_separated'
```
Reported by @chen-pin
diff --git a/hcipy/propagation/fraunhofer.py b/hcipy/propagation/fraunhofer.py
index 2339583..10c972a 100644
--- a/hcipy/propagation/fraunhofer.py
+++ b/hcipy/propagation/fraunhofer.py
@@ -50,7 +50,7 @@ class FraunhoferPropagator(AgnosticOpticalElement):
 		self.clear_cache()
 	
 	def get_input_grid(self, output_grid, wavelength):
-		return self.input_grid
+		return self._input_grid
 	
 	def get_output_grid(self, input_grid, wavelength):
 		return self._output_grid
['hcipy/propagation/fraunhofer.py']