Fix trailing slash for sliced paths.
Merge pull request #386 from moechofe/master

Implement missing method RedisClient.hset
Fix memory leak and keep-alive handling in HTTPClient.

The hash map that was used to store connection pools never found an existing key, so each HTTP request created a new connection pool. A fixed size ring buffer is now used to store connection pools.
Switch from version VibeNewSerialization to VibeOldSerialization (opt-in to opt-out).
Use GetStdHandle instead of GetConsoleWindow to determine if stdout/sterr can be used for logging.
Fix typo.
Make the libevent mutex debugging code thread-safe.
Fix getRequiredImports() (and thus the REST interface generator) to handle @property methods.
Avoid "statement unreachable" warning for non-serializable class/struct types and output a pragma warning instead. Fixes #382.
Fix setting of matched path parts when "*" is used in the URLRouter.
Better handle errors while reading from a WebSocket connection and avoid infinite hangs while waiting for a message.

When a connection was terminated and WebSocket.read was still in progress, it would just infinitely hang before. It will now throw an exception. Supposedly fixes issue #390.
Silent log messages in pipeRealtime.
Improve error messages when version VibeJsonFieldNames is set.
Avoid triggering warning when deserializing Bson to Json.
Avoid use of Appender for deserialization because it assigns to uninitialized memory.

This has caused a crash in dub-registry when using VibeJsonFieldNames.
Avodi statement not reachable warning.
Add workaround for corrupted Json values when using Appender.
Improve the Appender workaround.
Fix warning that for some reason only occurs on some systems...
Fixing on different system than the testing system is great.