Add group.remove for removing groups.

Calling group.remove() removes its event listeners so that it can be
garbage collected.

Fixes #55.
Add dimension.remove for removing dimensions.

Calling dimension.remove() removes its event listeners and clears its
filters so that it can be garbage collected.  This also removes all
groups associated with a dimension.

Fixes #10.
Add tests for removing dimensions and groups.
Support filtering by arbitrary functions.
Fix typo in comment.
Revert support for sorting NaN values.
Version 1.2.0.
gitignore + gitattributes
Support custom filter functions.

This allows more esoteric filtering to occur e.g. multi-valued fields.
The filter function is called for every value, so this is slower than
incremental range filtering.
Custom filter function: notify filter listeners.
Merge branch 'master' into square-master

Conflicts:
	crossfilter.js
	crossfilter.min.js
	src/crossfilter.js
fix Makefile: start & end JS snippets already take care of the exports; no need for hardcoding that in the Makefile itself.