Broke out WindowExtensions into Matchers and SeaweedDSL