ref(user-data): "make discovery-url" copies from user-data.example

This also adds *contrib/coreos/user-data* to *.gitignore*, so that local changes to this essential file do not cause `git status` to mark the repo as dirty. Derived from work done by @nathansamson.

Closes #1784, refs #2098.
> wouldn't it actually make more sense to run `make discovery-url` here?

Probably. And I'm not good with Ruby, but if you put inline code to exec `make` in a `config.vm.provision` block, it's just going to execute *every* time the `Vagrantfile` is run. I assume this is one of the reasons there is [vagrant-host-shell](https://github.com/phinze/vagrant-host-shell). 

Also in the Vagrant docs for [plugin development](https://docs.vagrantup.com/v2/plugins/development-basics.html) they say:

>Plugins should never use Ruby's built-in puts or gets style methods. Instead, all input/output should go through some sort of Vagrant UI object. The Vagrant UI object properly handles cases where there is no TTY, output pipes are closed, there is no input pipe, etc.

This makes me think calling Ruby code to exec `make discovery-url` directly in the Vagrantfile could be problematic. But honestly, if you or anyone else can make it work, I agree it would be preferable.