events - allow custom functions to execute on searches

This is useful because often plugin users will wantt o refresh or alter
other parts of the DOM when searches are performed.

By using Backbone.Events this is supported by a simple copy-paste (with
attribution), and a simple test to prove that `on` and `trigger` work.