soft_ifs: bug fixed, some cleanup; functionality as expected