AU: Provide a reboot_if_needed D-Bus API.

This will reboot if the current state is UPDATED_REBOOT_NEEDED.
Also add -reboot option to the update_engine_client.

BUG=4250
TEST=unit tests,gmerged on device and tried reboot requests

Review URL: http://codereview.chromium.org/3034026
diff --git a/update_engine.xml b/update_engine.xml
index 9cd9d42..5f20751 100644
--- a/update_engine.xml
+++ b/update_engine.xml
@@ -7,6 +7,12 @@
   <interface name="org.chromium.UpdateEngineInterface">
     <annotation name="org.freedesktop.DBus.GLib.CSymbol"
                 value="update_engine_service"/>
+    <method name="AttemptUpdate">
+      <arg type="s" name="app_version" />
+      <arg type="s" name="omaha_url" />
+    </method>
+    <method name="CheckForUpdate">
+    </method>
     <method name="GetStatus">
       <arg type="x" name="last_checked_time" direction="out" />
       <arg type="d" name="progress" direction="out" />
@@ -14,11 +20,7 @@
       <arg type="s" name="new_version" direction="out" />
       <arg type="x" name="new_size" direction="out" />
     </method>
-    <method name="CheckForUpdate">
-    </method>
-    <method name="AttemptUpdate">
-      <arg type="s" name="app_version" />
-      <arg type="s" name="omaha_url" />
+    <method name="RebootIfNeeded">
     </method>
     <signal name="StatusUpdate">
       <arg type="x" name="last_checked_time" />