Added component.json and made the filter into its own module.