Avoid serializing to string in streamlog.

Some log consumers wish to receive structured messages. This is best
evidenced by the logz handlers parsing the message strings they receive.
Implement error case of downcasts in streamlog consumers.

This should never happen (famous last words).
Merge pull request #49 from plobsing/structured-streamlog

Structured streamlog