* made AbstrackSocketAppender not lose events when socket connections gets lost (now uses LinkedBlockingDeque)
* extracted aspects of deque creation and output stream creation to factories in order to improve testability
* ecapsulated automatic flushing of output stream into a separate class in order to make this functionality testable
* slightly refactored internal structure of AbstrackSocketAppender to improve maintainability
extended documentation to reflect new SocketAppender behaviour towards synchronous/asynchronous queueing
Merge pull request #193 from SierraGolf/sierragolf/LOGBACK-977

LOGBACK-977 - AbstractSocketAppender loses event for every socket connection break