Let `autoconfigure` and `add_host` work together

Without this commit the provisioner can either add the custom hosts
added in the provisioner config, or the hosts discovered automatically
when the `autoconfigure` setting is `true`. It can never add both at the
same time.

This commit changes the provisioner to only apply the auto-configured
hosts when the `autoconfigure` setting is `true`. It will now always
apply the added `hosts` array from the provisioner config. The provisioner
config defaults to an empty array of added hosts if
`VagrantHosts::Config#add_host` is never used. Since the config `hosts`
array is empty in default cases, it is always safe to apply.
Correct mistake in 8a0c9f7

This commit corrects the provisioner config to actually enable the
behavior described in 8a0c9f7.
Merge pull request #8 from trlinkin/fix_the_things

Allow `autoconfigure` and `add_host` be used at the same time