[vcloud_director] Add Query API support to Model

This adds support for the vCloud Director Query API into the Model, via a mixin.

It adds a 'find_by_query' call which returns a Collection of objects matching that query. The full query syntax is available via this call, so it's pretty powerful.

I've added Mock code and tried to increase the coverage of our tests under Travis.

Currently this support has been added to:

vms
vapps
vdcs
networks
tasks
... though it is trivial to add it to the other entities.