Merge pull request #177 from hintjens/master

Problem: caller should own message returned by _recv
Compile error 'value' may be used uninitialized

Problem: When using a hash in a codec model, code generated for "C"
errors with 'value' may be used uninitialized in this function.

Solution: Simply initialize value to NULL.
Merge pull request #178 from danriegsecker/master

Compile error 'value' may be used uninitialized
Problem: encoding message with string uses printf

This might actually have some security implications if people using the
library are not avare of this and missuse _encode function. With _encode
function one can construct whole message in one go. Tricky part is that
if it contains string, there is no way to pass additional argument, so
one would expect that contrary to _set method, string is not passed
through printf function. Contrary is true and thus one can for example
call _encode(1, "%s %s") which will try to access not existing arguments
for printf as encode calls _set function.

Solution: Use _set("%s", str) in _encode.
Merge pull request #179 from miska/master

Problem: encoding message with string uses printf
Merge pull request #180 from hintjens/master

Improvements to client and server generators
Merge pull request #181 from hintjens/master

Adding PLAIN authentication support
Merge pull request #182 from hintjens/master

Problem: need way to customize client API
Merge pull request #183 from hintjens/master

Problem: crashed when trying to delete expired tickets
Problem: No way to insert arbitrary message tracing functions in server.
Solution: Accept optional send_tracer and receive_tracer properties in server model.
Merge pull request #184 from jemc/master

Problem: No way to insert arbitrary message tracing functions in server.
Merge pull request #185 from hintjens/master

Minor fixes
Merge pull request #186 from hintjens/master

Fixes to shutdown handshaking
Problem: generating incorrect code for strings type

Solution: fix the template.