Only exclude top-level metadata.rb file while vendoring

This should fix issue #1344.
I tried that, but it wouldn't work. The `source_files` variable in `FileSyncer.sync` contains relative paths that look like this:
```
apt/metadata.rb
artifact/metadata.rb
build-essential/metadata.rb
chef_handler/metadata.rb
windows/metadata.rb
my_cookbook/metadata.rb
my_cookbook/recipes/metadata.rb
```

Here are the results of testing different matches against top-level and nested file locations:

```ruby
# top-level metadata.rb
File.fnmatch?("metadata.rb", "my_cookbook/metadata.rb", File::FNM_DOTMATCH) # false
File.fnmatch?("/metadata.rb", "my_cookbook/metadata.rb", File::FNM_DOTMATCH) # false
File.fnmatch?("*/metadata.rb", "my_cookbook/metadata.rb", File::FNM_DOTMATCH) # true
File.fnmatch?("**/metadata.rb", "my_cookbook/metadata.rb", File::FNM_DOTMATCH) # true
File.fnmatch?("*/**/metadata.rb", "my_cookbook/metadata.rb", File::FNM_DOTMATCH) # false

# nested metadata.rb
File.fnmatch?("metadata.rb", "my_cookbook/recipes/metadata.rb", File::FNM_DOTMATCH) # false
File.fnmatch?("/metadata.rb", "my_cookbook/recipes/metadata.rb", File::FNM_DOTMATCH) # false
File.fnmatch?("*/metadata.rb", "my_cookbook/recipes/metadata.rb", File::FNM_DOTMATCH) # true
File.fnmatch?("**/metadata.rb", "my_cookbook/recipes/metadata.rb", File::FNM_DOTMATCH) # true
File.fnmatch?("*/**/metadata.rb", "my_cookbook/recipes/metadata.rb", File::FNM_DOTMATCH) # true
```