Use the UTF8_POINT macro in cols(1)

No need for libutf any more
diff --git a/README b/README
index b2070e7..8490a9a 100644
--- a/README
+++ b/README
@@ -21,7 +21,7 @@
 0=*|x chroot          .
 0=*|o cksum           .
 0=*|o cmp             .
- #*|x cols            .
+0#*|x cols            .
 0=*|o comm            .
 0=*|o cp              (-i)
 0=*|x cron            .
diff --git a/cols.c b/cols.c
index ae7d5b2..428cd79 100644
--- a/cols.c
+++ b/cols.c
@@ -9,7 +9,6 @@
 #include <unistd.h>
 
 #include "text.h"
-#include "utf.h"
 #include "util.h"
 
 static void
@@ -63,9 +62,10 @@
 	}
 
 	for (i = 0; i < b.nlines; i++) {
-		/* TODO: fix libutf to run utflen on a memory chunk
-		 * of given size to also handle embedded NULs */
-		len = utflen(b.lines[i].data);
+		for (j = 0, len = 0; j < b.lines[i].len; j++) {
+			if (UTF8_POINT(b.lines[i].data[j]))
+				len++;
+		}
 		if (len && b.lines[i].data[b.lines[i].len - 1] == '\n') {
 			b.lines[i].data[--(b.lines[i].len)] = '\0';
 			len--;
@@ -79,9 +79,10 @@
 
 	for (i = 0; i < rows; i++) {
 		for (j = 0; j < cols && i + j * rows < b.nlines; j++) {
-			/* TODO: fix libutf to run utflen on a memory chunk
-			 * of given size to also handle embedded NULs */
-			len = utflen(b.lines[i + j * rows].data);
+			for (k = 0, len = 0; k < b.lines[i + j * rows].len; k++) {
+				if (UTF8_POINT(b.lines[i + j * rows].data[k]))
+					len++;
+			}
 			fwrite(b.lines[i + j * rows].data, 1,
 			       b.lines[i + j * rows].len, stdout);
 			if (j < cols - 1)