Simplify recv/handle loop.
Various changes.
Add MessageType.
Special casing ordered is kind of pointless.