Record operations only for signalling sessions (reprise)

This is a rebase of #109 on current master. The original changes were (I assume accidentally) undone in #123, causing a regression (but unnoticed since the test case was also removed).

This also fixes #89 (again).