Filtering on keyup, error catching, empty filters

Binds filtering to keyup instead of keydown.
Catches invalid regular expression errors (filter is not set unless
valid).
Fixes empty filter not setting properly.