MINOR: buffer: replace bi_del() and bo_del() with b_del()

Till now the callers had to know which one to call for specific use cases.
Let's fuse them now since a single one will remain after the API migration.
Given that bi_del() may only be used where o==0, just combine the two tests
by first removing output data then only input.
diff --git a/include/common/buf.h b/include/common/buf.h
index 45686a2..be196f1 100644
--- a/include/common/buf.h
+++ b/include/common/buf.h
@@ -415,6 +415,23 @@
 	}
 }
 
+/* b_del() : skips <del> bytes in a buffer <b>. Covers both the output and the
+ * input parts so it's up to the caller to know where it plays and that <del>
+ * is always smaller than the amount of data in the buffer.
+ */
+static inline void b_del(struct buffer *b, size_t del)
+{
+	if (del <= b->o) {
+		b->o -= del;
+		del = 0;
+	}
+	if (del) {
+		b->p = b_peek(b, del);
+		b->i -= del;
+		del = 0;
+	}
+}
+
 /* b_realign_if_empty() : realigns a buffer if it's empty */
 static inline void b_realign_if_empty(struct buffer *b)
 {