Bnc#897394 ifroute support

Supersedes #256 (BTW if Michal had pushed its branch to the main repo instead of to his fork, I could have continued in that PR).