Consider al the outputs from each stage as being transferred

This key idea simplifies the reasoning. Intuitively, it says that
everything that is produced from one stage, is sucessfully transfered.

This stems from the fact that our stages are straight-line code that
never loop back, i.e. we don't have loop carried dependencies.

See #84.
Create test case for checking that we can handle interferences

See #84.