Reimplement clock(3) and switch to OpenBSD time(3).

The new implementation is a better approximation to the processor time used
by the process because it's actually based on resource usage rather than just
elapsed wall clock time.

Change-Id: I9e13b69c1d3048cadf0eb9dec1e3ebc78225596a
diff --git a/libc/Android.mk b/libc/Android.mk
index 35efa5b..eb9433f 100644
--- a/libc/Android.mk
+++ b/libc/Android.mk
@@ -96,7 +96,6 @@
     stdlib/setenv.c \
     stdlib/strtod.c \
     unistd/syslog.c \
-    unistd/time.c \
 
 # Fortify implementations of libc functions.
 libc_common_src_files += \
@@ -125,6 +124,7 @@
     bionic/brk.cpp \
     bionic/chmod.cpp \
     bionic/chown.cpp \
+    bionic/clock.cpp \
     bionic/clone.cpp \
     bionic/dirent.cpp \
     bionic/dup2.cpp \
@@ -319,6 +319,7 @@
     upstream-openbsd/lib/libc/gen/ftok.c \
     upstream-openbsd/lib/libc/gen/getprogname.c \
     upstream-openbsd/lib/libc/gen/setprogname.c \
+    upstream-openbsd/lib/libc/gen/time.c \
     upstream-openbsd/lib/libc/gen/tolower_.c \
     upstream-openbsd/lib/libc/gen/toupper_.c \
     upstream-openbsd/lib/libc/locale/wcscoll.c \