fixed binlog recovery behaviour in cases when recovery is interrupted before flushing to persistence layer
acks + binlog recovery: 1. now acks are written to binlog always, 2. binlog recovery takes into account acks on persistently stored messages too, 3. receipt on ACK frame with present receipt header is sent only after ack is stored to binlog (if binlog feature is enabled)