upgrade and split filter
make it reusable
Merge pull request #63 from mikey179/master

upgrade and split http filter