#6 add basic redirect support