fixed the semantics of FollowReturnsPastSeeds: If this option is set, a return edge gets processed for **all callers** of the callee from which we return in cases where we haven't seen the respective call edge.

This however leads to spurious edges if we have multiple call sites for the same callee. Let us assume call site A calls foo() with jump function a and call site B calls it with b. If we now return from foo with something derived from a, we will not find an incoming edge for call site B. FollowReturnsPastSeeds thus made us propagate the value to both call sites which makes us loose context sensitivity.

Fix as follows: Only follow past seeds if we have seen no call edge into the callee at all. We can then assume that we're really running beyond the seeds of the analysis and have no other chance than propagating to all call sites.
Merge branch 'develop' of git://github.com/Sable/heros into develop