Look at it again, right now the `changes` APIs is pretty clear, it just needs `Replication.Filter`. Do not want to over-engineer it now since I don't know what else it need from `Replication` class other than `Filter`. 

We can make the change you suggested when we actually find we need more information other than `Filter`. Thoughts?