Pass SignalInfo separately from Context
Move prelude into Session
Reorganize block.rs