Re-implement decoders logic, stop supporting decoder chaining and instead add support for Decoder that can decode based on an Event.

Add a SerializedRequstBuilder that works with both Atmosphere and Node.