Filters are not correctly invalidated

Filters have some custom invalidation code that hooks
into invalidatePaintUsingContainer. Because of the previous
custom code, repaint-after-compositing-update wass not aware
of filters and thus would only invalidate the visual overflow.

This change removes some of this invalidation code by inflating
the paint invalidation rect by the filters and reflections. It
also removes adjustCompositedContainerForSpecialAncestors that
just wrong (our paint invalidation container is *always* our
enclosing composited ancestor or the RenderView). It also
keeps the logic in
RenderLayerRepainter::setFilterBackendNeedsPaintInvalidationInRect
to mitigate the potential for regression.

Finally it exposed a bug with paintInvalidationState where we
wouldn't correct repaint reflections, covered by
fast/repaint/reflection-invalidation-after-display.html.

BUG=402777
R=senorblanco@chromium.org, wangxianzhu@chromium.org

Review URL: https://codereview.chromium.org/487083002

git-svn-id: svn://svn.chromium.org/blink/trunk@180684 bbb929c8-8fbe-4397-9dbb-9b2b20218538