Support for filters that are functions.

setFilter() now accepts and uses both string (as selector) filters and
function filters. Function filters receive the event that triggered them
and the draggable element on which they were triggered.