(MAINT)(gh-210) series of commits to get beaker smoketest working in ec2

- updates to aws_sdk hypervisor support to correctly use vmhostname, hostname and ip
- additional open ports for ec2 instances
- updates to dsl 'on' method to properly handle additional environment variables
I understand that `Beaker::Command` is in scope here as `Command` and that it is relatively common to use the unqualified in-scope name of a class/module both in the Ruby community and in Beaker, but I am curious if you are aware of any reasons not to use the fully-qualified version?

I personally prefer less ambiguity where possible, but I'm not suggesting a change should be made--just interested in discussion about coding conventions within Beaker.