Allow specifying post_up_message block

This PR allows users to configure a callable `post_up_message` to print values at a later time:

```ruby
Vagrant.configure("2") do |config|
  config.vm.post_up_message = -> {
    ip = `vagrant ssh -- "ifconfig eth1 | grep -o -E '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' | head -n1"`.chomp
    """
    Your instance is configured.

    https://#{ip}
    Username: foo
    Password: bar
    """
  }
end
```

I also thought about changing the method signature to be more DSL-like, but decided against it for minimal changes. Open to updating the PR to this if it feels more natural.

```ruby
Vagrant.configure("2") do |config|
  config.vm.post_up_message do
    "deferred message here"
  end
end
```

Thoughts?