Fix a bug where HttpObjectDecoder generates two LastHttpContent consecutively

Motivation:
When an HttpResponseDecoder decodes an invalid chunk, a LastHttpContent instance is produced and the decoder enters the 'BAD_MESSAGE' state, which is not supposed to produce a message any further.  However, because HttpObjectDecoder.invalidChunk() did not clear this.message out to null, decodeLast() will produce another LastHttpContent message on a certain situation.

Modification:
Do not forget to null out HttpObjectDecoder.message in invalidChunk(), and add a test case for it.

Result:
No more consecutive LastHttpContent messages produced by HttpObjectDecoder.
Fix checkstyle
[#1259] Add optimized queue for SCMP pattern and use it in NIO and native transport

This queue also produces less GC then CLQ when make use of OneTimeTask
Merge remote-tracking branch: upstream/master