In theory this setup should be possible if your virtual machines meet minimum requirements, able to resolve all hosts on network correctly, ssh to each other, etc. Please refer to http://docs.hortonworks.com/ for minimum hardware and software requirements when you build your virtual machines. Please note that this configuration was never tested on our side and not ideal.
Here are some more additional notes regarding questions that you posted:
>> If I use the HMC install method, can I direct Namenode and Datanode roles to specific (virtual) servers?
Yes, as long as HMC is able to find all nodes. There is a limitation where you not able to run datanode on HMC server.
>> Or can I use GSinstaller and and add HMC at a later date?
This is not possible at this time.
Hope this helps.