add Router#open_external
fix edge case with modal animation
support "cancel"
Merge pull request #1 from usepropeller/cancel

support "cancel"