Nat service vse rewrite

Validates NatService config against schema.

Schema is as per API doc:
* For SNAT/DNAT rules, ```[original_ip, translation_ip, rule_type, :network name]``` are mandatory fields.
* protocol, port fields are optional
* API also have policy, nat_type are optional acceptable fields, but these fields are not returned in get_edge_gateway. Also they are not accepted by UI. I have skipped these fields since they don't have any effect.
policy => One of: allowTraffic , allowTrafficIn, 
nat_type => One of: ipTranslation (use IP translation), portForwarding (use port forwarding)

cc @mikepea