Test for ensuring we call API efficiently

The NatService currently calls the EdgeGateway API each time it finds
a NAT rule that requires an Interface section.

This test tests that a rule-set that contains a single network reference
should only call the API once (to look up that network and cache it for
subsequent rules)
Fix discovered issue with NatService test

NatService generator tests were specifying 'network' rather than
'network_id', as per the schema.
Cache EdgeGateway interfaces in NatService

Generator was previously doing an API call to look up the EdgeGateway
Interface details on a per-rule basis.

This commit caches the first lookup into an instance variable, reducing
the API call count down to once-per-interface.

Tests now pass successfully.
Merge pull request #153 from alphagov/65619490_nat_network_lookup

[#65619490] NatService EdgeGateway interface lookup optimisation