Problem: need authenticated access

Solution: use PLAIN security to start with:

* mlm_client_new () address field is 'username/password' where the
  username is a mailbox name.
* malamute.c server checks passwords according to configuration,
  see malamute.cfg 'auth' section.
* mlm_server config section specifies that server uses PLAIN security
  mechanism.
* src/passwords.cfg is test password set.

Fixes #21
Cleaned up selftests
Problem: client API names are clumsy

The _produce/_consume/_provide names are clumsy and don't explain
themselves.

Solution: use set_producer, set_consumer, set_worker to show the
various roles involved.
Problem: client send API is too clumsy for common use

Having to send zmsg_t structures is fine for real applications
yet it's clumsy for simpler cases.

Solution: provide additional API that focusses on string data.

    mlm_client_sendx (send string data to stream)
    mlm_client_sendto (send string data to mailbox)
    mlm_client_sendfor (send string data to service)

These take multiple strings, sending as multiframe data. You end
the argument list with NULL (same style as zstr_sendx, where this
is taken from).
Problem: crashes when cleaning up expired client

Solution: fixed in zproto, regenerated here.

Fixes #34
Problem: it takes two Ctrl-C's to kill mshell

Solution: fixed client API destructor in zproto, rebuilt the code
here. It now exits cleanly with one Ctrl-C, as you'd expect.
Merge pull request #33 from hintjens/master

Problem: need authenticated access