Sweep of all changes in re design of punchThroughTools from following merge requests:
!33912 (merged)
!37435 (merged)
!37622 (merged)
!38126 (merged)