[vcloud_director] get_network_complete

The existing get_network request method does not return the complete
network details provided by the API -- the parser is lossy. In addition, it
rewrites vCloud elements in a ruby-ish way, which then requires retranslation
to load back in the API.

It is not possible to adjust the get_network request without breaking code that
already depends on it (in particular, the current Network model), hence the need
for a tandem method.

The get_network_complete method returns in a format that should be loadable
into post_create_org_vdc_network, as suggested by API documentation.
[vcloud_director] Add tests and connect up get_network_complete
Add network model tests

Largely based on the vapp tests, except for explicitly
trying to find a suitable network to test against rather than
just blindly picking the first.

Test lazy loading is working, and that values loaded match
our data from the raw service request.

Lazy loading unfortunately complicates testing as per the
current implementation - determining that the loading has
happened is on a field-by-field basis, which leaves fields
that are undefined in vCloud in a 'NonLoaded' state. Possibly worth
revisiting this logic in a separate commit.
Use admin endpoint for get_network

API provides both api/admin/network and api/network for GET
request of the orgVdcNetwork. The admin endpoint also returns
the attached EdgeGateway, which comes in useful when re-writing
the output to POST back as a new network.
Switch network model over to get_network_complete

This has also fixed an issue where undefined attributes in the
request output were not being unmarked as NonLoaded. Test adjusted
accordingly.

In addition, highlighted that we need the ensure_list! hack on
IpRanges->IpRange.
Add Mock support to get_network_complete

which in turn re-enables Mock support in the network Model
Add deprecation warning for get_network

get_network is being deprecated in favour of get_network_complete,
which returns the complete GET-Network API response from vCloud.

This is a transitional step - see https://github.com/fog/fog/pull/2683

In a future release, get_network will be replaced with the logic from
get_network_complete, and then get_network_complete deprecated
accordingly.

The network Model has been updated to use get_network_complete already.

Any code that relies on existing get_network behaviour should be
updated to use get_network_complete or the Model asap.
Fix Ruby 1.8.7 hash key issue
Merge pull request #2683 from alphagov/vcd_get_network_complete

[vcloud_director] Add get_network_complete non-lossy API request.