read minimum length when determining pdu length

in cases where the session is long lived (eg: subscriptions), reading
too much without buffering could lead to skipping over multiple small
responses.
tidy up the shutdown-server command

We were previously killing ourselves immediately in the command
dispatcher.  Now we'll signal that we should stop and get torn
down a little more gracefully.

This has the side effect that we will send a response to the
shutdown-server command and not trigger some error spew in the CLI.
whoops, don't leak fstype in the success cases

:-(