This changeset includes the changes we discussed in #566 regarding agentOptions, now with some basic tests.
handle ciphers and secureOptions in agentOptions
I removed the conditional which would short circuit processing of agentOptions if no poolKey was generated for said agentOptions. This early return was undesirable in cases where agentOptions were specified which did not manifest in the poolKey.
I added ciphers and secureOptions to the poolKey. The poolKey is still by no means exhaustive, but this change better supports these common options now. A better solution might be to simply serialize the agentOptions object and use that as the key, but that would be a larger change and might change existing behavior.
tests and fix for null agentOptions case