Move SVG filter to its own SVG element, clean up

Multiple SVG filters on one page were causing the issue noted in #11 when the
first filter on the page was hidden with `display: none`. In this case all
further SVGs would end up not being displayed, since they were referencing the
first SVG filter, which was currently hidden.

Fixes #18