core: provider has default priority of 5
core: default provider chosen by usability and prority
Update tests
core: more intuitive logic around default providers
core: Can exclude providers
providers/docker: lower priority

We do this mostly because Docker is the only provider that using it
requires some amount of Docker-specific knowledge. VirtualBox, VMware,
etc. kind of "just work". It is not the likely case that someone does
a `vagrant up` and expects Docker, at this point.
core: Fix some tests, revert a change
core: dup the provider options so we can't overwrite them
core: fix final test
Merge pull request #3600 from mitchellh/f-default-provider

Default Provider By Priority