Soft cascade refactoring and fixes

This request contains only improvements for already pushed soft cascade functionality.