jni: Introduce valid channel to publisher and reimplement publisher
so that calls are truly async.

This uncovered quite a few tests that were passing just because the
old publisher was semi-synchronous when it used an unbuffered chan.

Also introduce PublisherState to the PublisherStatus(formerly Mounts).

Fixes vanadium/issues#1148

MultiPart: 2/4

Change-Id: If299bf1f3140856ee8f5ed87395d1119310fb828
1 file changed