Dependency update
Fix void return statement
Prologue blocks have labels which are the function's name

Also moved out_blk_new() to blk.c
impl_return -> impl_to_retreg
out_ctrl_end_ret() transfers control to the epilogue block
out_ctrl_transfer() is a no-op from dead code
gas highlighter script
Jump threading #1: Skip fall-through jumps
Handle returns without an expression
Lazy label block creation
Transfer final block to epilogue if it's not set
Epilogue block terminates explicitly
Labels have explicit fall-through to their block
out_ctrl_transfer() leaves the current block as NULL
Handle loopback block flushing