Large NWRFC Thread Fixes

Use a modified NWRFC Gem which is non-blocking. Protect all sessions
by running in seperate threads with a default timeout of 30 seconds.

Ensure the connection object is not shared across threads as per SAP
note 513386.