Add link following, make more error tolerant