CA-110585: Passing correct snapshot_time during VDI.snapshot

Issue: for_vdi calls find_vdi which in turn refers to xapi db to find out about vdi. At that point, the xapi db is not updated with the vdi info. This leads to snapshot time being set to Date.never (1970-01-01). This then gets passed to SM.

Fix: Adding an optional parameter vdi_info. This, if present, takes info from vdi_info directly and doesnt peek xapi db for snapshot time. 

Signed-off-by: Ravi Pandey <ravi.pandey@citrix.com>