Change semantics of keepWhen/dropWhen.

They no longer propagate the right Signal when the left Signal
changes.
Uncomplicate keepWhen implementation
Remove old JS dropWhen/keepWhen
Merge pull request #409 from maxsnew/keepWhen

Change semantics of keepWhen/dropWhen.