Chuck, answers below.
1. Proxy selection mechanism has nothing to do with backup repository location. What is really important is proxy's ability to retrieve data from source host using this or that transport mode. You can read about this in detail in the sticky FAQ topic
2. Within a single job multiple proxies can be used to process different VMs. But all VMs in a job are processed sequentially.
3. If you are talking about Windows or Linux server acting as a repository, then Veeam agent is started on the repository host and data is transferred between agents on proxy and repository. If CIFS share is used as repository, then the agent is started on the proxy itself (or on a target-side proxying server, in case of offsite backup) and writes to the SMB share directly.