Simplify of the SimpleMsgTest.

* Make use @Before to prepare PrintStream and OutputStream for each test.
* Shortening the names used in the tests
Detailed assertion in SimpleMsgTest

Signed-off-by: Grzegorz Wieczorek <grw1@wp.pl>
SimpleMsg improvements

* Improve printing when msgContend is Collection<Loggeable> or Loggeable[]
* Allowing the use of nullable msgName in order to produce output like:
   <tag>Some Value</tag>
* Add a constructor just with tagName and msgContent
Handling when msgContent is null instead of throwing NPE

* if msgContent is null then <tag name="Some Name"/> is printed
* if entry of composite msgContent is null then:
    <tag name="Some Name">
      <inner-tag name="Inner Name">
        Some Value
      </inner-tag>
      null  <- it's that null entry
    </tag>
Removed unnecessary SimpleMsg costructors

Make use of autoboxing instead of many constructors
Added missing SimpleMsgTest jUnit tests
Merge pull request #55 from demsey/logging

Simplifications and improvements in SimpleMsg
Updated version number
Replace TransactionManager thread management with thread pool

Thread management is moved to ThreadPoolExecutor with custom
TMThreadFactory which is responsible for thread "session id"
assigment, start and elapsed time measurement.
On input space registered is listener so there is no thread
contention. It is moved to BlockingQueue and it is probably
better implemented.
Supported are 2 queuing methods:
 * Direct handoffs - with SynchronousQueue
 * Unbounded queues - with LinkedBlockingQueue
For more info see
http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ThreadPoolExecutor.html

Configuration:
If sessions equals to max-sessions then 'Direct handoffs' method is
chosen else 'Unbounded queues' where core pool size is set with
max-sessions.

Signed-off-by: Robert Demski <drdemsey@gmail.com>
WIP: last fixes