Rebind returns target when the source returns itself

The logic is as follows:  If a rebound function returns the source object, we should return the target object, even when no arguments were supplied.

Example:   If I rebind a dispatch object to a target object and call a dispatch function with no argument, it will return the target, not the dispatch object, allowing for proper chaining.