Add link parsing infrastructure and middleware