TLS/SSL freeze-up fixes and introduction of an interface.

I've been using JWS for about 11 months or so...  Everything was smooth until I switched to TLS/SSL.  I'm pushing back the fixes that make it solid for me.

Added IWebScoket interface to make JWS play ball with DI tools like Google Guice.  (This doesn't mean you *have* to use DI - it just makes it possible if you use that pattern.)

Fix some bugs around CLOSE_WAIT, partial buffer hangs, deadlocks, etc. (Commented in the code - can remove if ported back to the mothership.)

May have messed up tabs vs. spaces here and there - was on accident.  Could we add a .project file that enforces a code style for the project?