* Get all SSL unit tests to pass
* Possible fix for #2
* Test to close #14 (ALPN support)
* Fix MemoryTracker so that it cleans up leaked objects as it goes.
This prevents subsequent unit tests from failing.
On Mono, the runtime attempts to free returned strings by default. Many of the native functions return static strings that must not be freed. In these cases, manually marshal the string without freeing the underlying pointer.