MINOR: ring: make the applet code not depend on the CLI

The ring to applet communication was only made to deal with CLI functions
but it's generic. Let's have generic appctx functions and have the CLI
rely on these instead. This patch introduces ring_attach_appctx() and
ring_detach_appctx().
diff --git a/include/proto/ring.h b/include/proto/ring.h
index a82f935..d927b38 100644
--- a/include/proto/ring.h
+++ b/include/proto/ring.h
@@ -30,6 +30,8 @@
 struct ring *ring_resize(struct ring *ring, size_t size);
 void ring_free(struct ring *ring);
 ssize_t ring_write(struct ring *ring, size_t maxlen, const struct ist pfx[], size_t npfx, const struct ist msg[], size_t nmsg);
+int ring_attach_appctx(struct ring *ring, struct appctx *appctx);
+void ring_detach_appctx(struct ring *ring, struct appctx *appctx, size_t ofs);
 int ring_attach_cli(struct ring *ring, struct appctx *appctx);
 int cli_io_handler_show_ring(struct appctx *appctx);
 void cli_io_release_show_ring(struct appctx *appctx);