catch protobuf errors during block decoding (up to bad records threshold)

elephant-bird catches many exceptions related to data corruption, but it lets through exceptions of type com.google.protobuf.InvalidProtocolBufferException (because they're IOExceptions).  This patch special-cases this particular exception and increments the bad records count instead of re-throwing it.