BUG/TST: transform and filter on non-unique index, closes #4620
closes #4620

This is a relatively minor change. Previously, `filter` on
`SeriesGroupBy` and `DataFrameGroupby` and `transform` on only
`SeriesGroupBy` referred to the index of each group's object.

This cannot work with repeated indexes, because some repeated
indexes occur between more than one group. Instead, use
`{Series, DataFrame}GroupBy.indices` array, an array of
locations, not labels.

_This was marked for 0.14, but I would really like to start using it._
