Vagrantfiles can be made provider agnostic, and the provider specific settings go inside of the `config.vm.provider :whatever` blocks as done here. That way the only difference between using different providers is the argument passed to `vagrant up`. But I can refactor it if you'd like.