Clearing filter from dimension on disposal and propagating to groups.

Previously, if a filter was present on a dimension, disposing of the
dimension would cause other dimension's group.all() counts to loose
sync with the filters. In certain circumstances, values of
group.all() would become negative.
Properly clear dimension filters before disposal.

Merge pull request #127 from sAlexander/master.
Fix #129: updating groups after filterFunction.

A serious bug was introduced in version 1.3.8, causing groups on the
first dimension to be incorrectly calculated after a filterFunction was
called on another dimension.