Added support for VMs in subfolders when doing vm query

vm query was previously unable to find VMs in subfolders.  Instead of find_in_folder(), traverse_folders_for_vm() is used instead.

Also, traverse_folders_for_vm() was returning erratic results (the same VMs multiple times and not all VMs in all folders).  This was fixed.