first commit, may be much bugs

todo
1. add test
2. implement a basic URLDispatchDelegate
3. add a sample project