AU: Class to perform delta updates.

A class to perform delta updates and the associated unittests. Also,
change the delta diff generator executable to be able to apply a
delta, which is handy for debugging.

TEST=Attached unit test, hand-tested on real build images
BUG=552

Review URL: http://codereview.chromium.org/1718001
diff --git a/SConstruct b/SConstruct
index 41dc94f..5c11b6d 100644
--- a/SConstruct
+++ b/SConstruct
@@ -107,7 +107,8 @@
                    bzip_extent_writer.cc
                    cycle_breaker.cc
                    decompressing_file_writer.cc
-                   delta_diff_parser.cc
+                   delta_diff_generator.cc
+                   delta_performer.cc
                    download_action.cc
                    extent_mapper.cc
                    extent_writer.cc
@@ -137,6 +138,7 @@
                             cycle_breaker_unittest.cc
                             decompressing_file_writer_unittest.cc
                             delta_diff_generator_unittest.cc
+                            delta_performer_unittest.cc
                             download_action_unittest.cc
                             extent_mapper_unittest.cc
                             extent_writer_unittest.cc
@@ -159,25 +161,16 @@
                             zip_unittest.cc""")
 unittest_main = ['testrunner.cc']
 
-delta_generator_sources = Split("""delta_diff_generator.cc""")
 delta_generator_main = ['generate_delta_main.cc']
 
-test_installer_main = ['test_installer_main.cc']
-
 env.Program('update_engine', sources + main)
 unittest_cmd = env.Program('update_engine_unittests',
-                           sources + delta_generator_sources +
-                           unittest_sources + unittest_main)
-
-test_installer_cmd = env.Program('test_installer',
-                                 sources + delta_generator_sources +
-                                 unittest_sources + test_installer_main)
+                           sources + unittest_sources + unittest_main)
 
 Clean(unittest_cmd, Glob('*.gcda') + Glob('*.gcno') + Glob('*.gcov') +
                     Split('html app.info'))
 
 delta_generator_cmd = env.Program('delta_generator',
-                                  sources + delta_generator_sources +
-                                  delta_generator_main)
+                                  sources + delta_generator_main)
 
 http_server_cmd = env.Program('test_http_server', 'test_http_server.cc')