localize import of event driver libraries

- reduces parser work when recompiling vibe.d apps
localize some imports
Merge pull request #750 from MartinNowak/localizeImports2

localize some imports
Merge pull request #749 from MartinNowak/localizeImports

Localize import of event driver libraries.
Enable use of static event driver types using VibeUseNativeDriverType. See #749.
Avoid using chunked encoding for HTTPServerResponse.writeJsonBody by default. Fixes #619.
Rename MulticasterStream to MulticastStream and perform a little code cleanup.
Convert recursion into iteration when skipping multiple SMTP status lines.

Recursion has the risk of stack overflow exploits.
Fixed --config=libev build
Implement serialization support for Nullable!T and document serialization rules. Fixes #752.
Merge pull request #755 from lionello/fixed_libev

Fixe --config=libev build.
Zerofill m_fill for safe fiber recycling, fixes #753

Reset initialization vector also

Added destructor support

Changed destructor to function and pointer

do not expose TaskDestructor

Using static struct for destructors

Checking for empty FLSInit
Additional precautions for possible access violations

Remove unsafe TaskLocal destructor

Remove bugs
Merge pull request #754 from etcimon/tls-safety

Implement safe fiber recycling, fixes #753
Fix method name.
hide SSL implementation headers behind interfaces

- turn SSLStream and SSLContext into interfaces

- move OpenSSL based implementation to vibe.stream.openssl
mark all SSLContext getters as const
Merge pull request #757 from MartinNowak/ssl_interfaces

Hide SSL implementation headers behind interfaces.
Merge branch 'master' of github.com:rejectedsoftware/vibe.d
Remove the "private" constructor hack for OpenSSL classes. See #757.