Vcloud:Launch.run would not work, that's correct. I agree that it is broken currently. 

Out of the two options, you suggested
require 'vcloud' => would be wrong, because it will require other tools as well. I want user to require only vcloud-launch tool here.

this can be fixed by requiring 'vcloud/core' inside 'vcloud/launch'