First pass at the spade edge protocol

A shim to represent / serialize and / deserialize our events, to be used by the edge when communicating with the processor tier.
see aasteds suggestion in spade_edge . I dont think it makes sense to have the benchmark in both places