Fix telemetry field filtering

Change order of telemetry message parts so that filtering on fields
still works (which is done by the subscribe mechanism, which keys off
the first message part, apparently).
Fix ingestd appearing to hang on zmq exceptions

The zeromq-haskell library's `Zero.async` has a `finally` call in it,
catching all exceptions and decrementing the reference count held by
`runZMQ`. The problem with this is that it meant that exceptions were
not propegating out of that thread and thereby not taking out all the
linked ones so the process was hung, effectively.

Fix by switching to using `Async.waitEitherCancel`
Minor syntax cleanups
Bump development version