NSX: Ensure gateway devices are usable after upgrade

The gateway device database migration upon an upgrade creates
gateway devices objects from references in network gateway
objects.
While these gateway devices are perfectly usable
in network gateways, they are not directly visible to tenants
and also cannot be updated to change details such as name,
connector type or ip as well as the client certificate.

This patch fixes the DB migration in order to ensure tenant
have access to gateway devices created after an upgrade.
This patch also modifies the l2 gateway nsxlib module to
ensure request bodies are correctly created even when not all
the attributes of a gateway device are specified.

Change-Id: I7077e9884adc739fb75e64a6e9a17a124d79fb6b
Closes-Bug: 1293617
Merge "NSX: Ensure gateway devices are usable after upgrade"