Small bug fix
Makes ClientIdInterface Thread safe

Was previously thread safe, after singleton change, there was a
deadlock.  Commit refactors and generally improves singleton
implementation.  ClientIdInterface is no longer a 'lazy singleton', but
that should not make a significant difference
Removes unnecessary comments
Fills a bit more out on ClientIdKeyDiallog

Still needs a good bit more to make functional, but it's getting there.
Adds MainWindow -> ClientIdKeyDialog Xface

Adds UI to MainWindow to interact with ClientIdKeyDialog
Adds more flesh to ClientIdKeyDialog

Also makes a few minor changes to ClientIdInterface and MainWindow