Adds newSession timeout

Adding a timer, with default of 0, so that newSession returns null if it is unable to acquire a connection in a timely fashion.
Adds worker thread and worker runnable implementation
Removes rogue semicolon