require vagrant
add vagrant provider keys
set the port if it's supplied; display port in log statements
don't throw this exception
used method_missing instead of define_method
add the ssh_port method
return a provider for provider type vagrant
use the right provider's identity_file
use proper provider lab and lxc users
use the provider ssh_port