JBIDE-18247 - better organized with better cancelation logic

JBIDE-18247 - add apis that actually expose timeout variable

JBIDE-18247 - added a javadoc

JBIDE-18247 - changed forceStop boolean into a timeToLive value

JBIDE-18247 - move method into URLTransportUtility to be public API

Cleanup of api, javadoc, and added a test

Added second test

Added second test