Implement filters and responders - closes #28