Use remote sent times for calculating uptime in GetStatus

Do the same thing as when retrieving all statuses and use the monotonic
sent time of the status message as the "now" for calculating uptime.
This doesn't include the latency between the sending of the status
message and when aos_starter is run, but for typical use-cases that
shouldn't be an issue.

Change-Id: I73104b6a819d17817b4cbaf15378b91c852195bd
Signed-off-by: James Kuszmaul <james.kuszmaul@bluerivertech.com>
diff --git a/aos/starter/starter_rpc_lib.h b/aos/starter/starter_rpc_lib.h
index f91fb9e..3097b5f 100644
--- a/aos/starter/starter_rpc_lib.h
+++ b/aos/starter/starter_rpc_lib.h
@@ -99,8 +99,11 @@
 // Fetches the status of the application with the given name. Creates a
 // temporary event loop from the provided config for fetching. Returns nullopt
 // if the application is not found.
+// The returned pair is the time at which the ApplicationStatus was sent on the
+// node it was sent from, to allow calculating uptimes on remote nodes.
 const std::optional<
-    aos::FlatbufferDetachedBuffer<aos::starter::ApplicationStatus>>
+    std::pair<aos::monotonic_clock::time_point,
+              aos::FlatbufferDetachedBuffer<aos::starter::ApplicationStatus>>>
 GetStatus(std::string_view name, const aos::Configuration *config,
           const aos::Node *node);