Problem: sending complex commands to actors is too clumsy

C isn't a neat language for sending mixed types as messages, e.g.
a string, an int, and a binary chunk, as one message. In zbeacon
this makes for a cumbersome API.

Solution: use a 'picture' and va_args to allow arbitrary types in
the send command. Implement this in zsock_send and zsock_recv,
which were waiting for something fun.
Problem: using old actor API style in zbeacon selftest

Makes for clumsy code. Solution: use zsock_send/zsock_recv, which
provide short 1-liners for richer command sending.

Nice results, new zbeacon is 422 lines of code, down from 580 LOC.
Problem: zsock_send cannot send pointers

Solution: extend picture with 'p' for pointer encoding/decoding

Done, and added test case for this.
Problem: inconsistent whitespace style

Specifically, missing space before '('.

Solution: fix these.
Problem: need selective zsock_recv

E.g. to just get certain fields and ignore others.

Solution: if caller passes NULL arguments, skip those fields.
Additionally, if sender returns short message (e.g. just first field)
then set all following return values to NULL or zero.
Merge pull request #636 from hintjens/master

New picture message methods for zsock