fn unpack_output<OutputAddress, F>(
    address_unpacker: &mut F,
    codec: &mut Codec<&[u8]>
) -> Result<Output<OutputAddress>, ReadError>where
    F: FnMut(&mut Codec<&[u8]>) -> Result<OutputAddress, ReadError>,