With caller user metadata

Fix location filtering under rspec3 by passing along the original caller as metadata, so it gets picked up here (instead of the block.source_location value, which is inside the prefactory lib): https://github.com/rspec/rspec-core/blob/26698e46d312802483cee456610508f92a3dde56/lib/rspec/core/metadata.rb#L97

minor: seems like the `case` statement is not necessary here

```ruby
rspec_version = if ENV["RSPEC_VERSION"].to_s == ''
                  "~> 0"
                else
                  "~> #{ENV['RSPEC_VERSION']}"
                end
```