Fixes the `short_channel_id` being serialized as 4 bytes block height, 3 bytes transaction index and 1 byte output number, to use 3+3+2 as the spec says. The reordering in the unit test structs is mainly to be able to still use `eq_upto` for tests.
Using 'taskset -c 0' I managed to slow down pytest enough to trigger this locally. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This saves all callers having to handle it. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>