centralized printf formats and improved log_displayer performance

Before, log_displayer copied each message into the same structure that
gets put into queues etc so that it could be printed with the same
function. Now, it prints it directly, but using the same formats.
diff --git a/aos/build/queues/compiler.rb b/aos/build/queues/compiler.rb
index e4312fd..58b2bf1 100644
--- a/aos/build/queues/compiler.rb
+++ b/aos/build/queues/compiler.rb
@@ -88,6 +88,7 @@
 	cpp_tree.add_cc_include("aos/common/inttypes.h".inspect)
 	cpp_tree.add_cc_include("aos/common/queue_types.h".inspect)
   cpp_tree.add_cc_include("aos/common/once.h".inspect)
+  cpp_tree.add_cc_include("aos/common/logging/logging_printf_formats.h".inspect)
 	cpp_tree.add_cc_using("::aos::to_network")
 	cpp_tree.add_cc_using("::aos::to_host")
 
diff --git a/aos/build/queues/objects/queue.rb b/aos/build/queues/objects/queue.rb
index b40ccb2..610bdf7 100644
--- a/aos/build/queues/objects/queue.rb
+++ b/aos/build/queues/objects/queue.rb
@@ -50,7 +50,7 @@
                        "int16_t" => "%\" PRId16 \"",
                        "int32_t" => "%\" PRId32 \"",
                        "int64_t" => "%\" PRId64 \"",
-                       "::aos::time::Time" => "%010\" PRId32 \".%05\" PRId32 \"s"}
+                       "::aos::time::Time" => "\" AOS_TIME_FORMAT \""}
         def toPrintFormat()
 		if(format = PrintFormat[@type])
 			return format;
diff --git a/aos/build/queues/output/message_dec.rb b/aos/build/queues/output/message_dec.rb
index a165359..40a2570 100644
--- a/aos/build/queues/output/message_dec.rb
+++ b/aos/build/queues/output/message_dec.rb
@@ -302,7 +302,7 @@
 		if (self.type == 'bool')
 			args.push("#{parent}#{self.name} ? 'T' : 'f'")
     elsif (self.type == '::aos::time::Time')
-      args.push("#{parent}#{self.name}.sec(), #{parent}#{self.name}.nsec()")
+      args.push("AOS_TIME_ARGS(#{parent}#{self.name}.sec(), #{parent}#{self.name}.nsec())")
 		else
 			args.push("#{parent}#{self.name}")
 		end
diff --git a/aos/build/queues/print_field.rb b/aos/build/queues/print_field.rb
index 2e70e15..c7b8530 100644
--- a/aos/build/queues/print_field.rb
+++ b/aos/build/queues/print_field.rb
@@ -17,6 +17,7 @@
 #include "aos/common/byteorder.h"
 #include "aos/common/time.h"
 #include "aos/common/print_field_helpers.h"
+#include "aos/common/logging/logging_printf_formats.h"
 
 namespace aos {