Smooth client shutdown

Use daemon threads for the timers and netty pool threads so that an intance of NiftyClient that isn't cleanly shutdown won't hold up the shtudown of the JVM. Clean NiftyClient shutdown is still an option, but is no longer required.