Refactoring of graph linearization and linear order.

Rationale:
Ownership of graph's linear order and iterators was
a bit unclear now that other phases are using it.
New approach allows phases to compute their own
order, while ssa_liveness is sole owner for graph
(since it is not mutated afterwards).

Also shortens lifetime of loop's arena.

Test: test-art-host
Change-Id: Ib7137d1203a1e0a12db49868f4117d48a4277f30
diff --git a/compiler/Android.bp b/compiler/Android.bp
index 2556178..6faac09 100644
--- a/compiler/Android.bp
+++ b/compiler/Android.bp
@@ -61,6 +61,7 @@
         "optimizing/instruction_simplifier.cc",
         "optimizing/intrinsics.cc",
         "optimizing/licm.cc",
+        "optimizing/linear_order.cc",
         "optimizing/load_store_elimination.cc",
         "optimizing/locations.cc",
         "optimizing/loop_optimization.cc",