A Loop-free Shortest-path Routing Algorithm for Dynamic Networks