Fix package tangle.
Created a special UUIDUtils class that extracts the contents of eaio's UUIDGen.newTime() method and, rather than relying on a static synchronized method to obtain a new UUID, a java.util.UUID is created using the same fast, time-based logic as an eaio UUID, but a ReentrantLock is used to reduce the synchronization hit. This also removes references to eaio's UUID class from everywhere except the UUIDUtils class. Other references of UUID use the java.util.UUID class.
Based on recent performance tests, it seems that a ReentrantLock with a primitive long is reasonably fast in most situations, even though higher-core machines seem to prefer a synchronized block. In testing lower-core numbers, however, synchronized is slower than ReentrantLock. So for the time being at least, it seems prudent to go with the ReentrantLock and maybe get a high-core machine to test on to see if there really is a difference based on cores. We can maybe add some logic depending on the number of cores whether to do a sync update of lastTime or use a ReentrantLock.
Fix output Stream.
Tweaked logback config.
Created a TcpClient implementation that mirrors the TcpServer implementations. It leverages the same Codec abstractions and uses a TcpConnection to communicate with a server.
Fixes for LengthFieldCodec.
Added simple ByteArrayCodec
Fix for Buffer.skip() to implement it correctly.
Tweak the StandardCodecsSpec
Added LengthFieldCodec test.
Added LineFeedCodec TcpClient test.
HDFS sometimes complains about the size of the Buffer being written. Break it down into chunks small enough to guarantee the hadoop client doesn't complain about it.
Added rewind method.
Rewrite LengthFieldCodec
Tweak how the readerIndex is updated.
Add Ignore to the tests for the time being.
Removed obsolete property.