This method signature supports two different ways to pass the caller:

* As the `expected_from` option in the `opts` argument.
* as the `orig_caller` argument.

IMO, an API that supports two different ways to pass the same thing is confusing and broken.

Instead, this should just support one way to pass it: `opts`.  Within the method body, you can do:

``` ruby
orig_caller = opts.fetch(:expected_from) { caller(1)[0] }
```