Dump maps inline in disassembled code.

In pursuit of Bug: 7250540, dump mapping and GC map tables inline such
as:

0x607333a8: f8dfe11c    ldr.w   lr, [pc, #284]  ; 0x6076416d
0x607333ac: 1c05        mov     r5, r0
0x607333ae: f8df0144    ldr.w   r0, [pc, #324]  ; 0x6003ba08
0x607333b2: 9a0b        ldr     r2, [sp, #44]
0x607333b4: f04f0b2f    orr     r11, pc, ThumbExpand(47)
0x607333b8: 1c29        mov     r1, r5
0x607333ba: 465b        mov     r3, r11
0x607333bc: 2900        cmp     r1, #0
0x607333be: f0008070    beq.w   +224 (0x607334a2)
0x607333c2: 47f0        blx     lr
suspend point dex PC: 44
GC map objects:  v2 (r7), v3 (r5), v6 ([sp + #84]), v7 (r6)
...

As GC map and mapping tables are inline, don't dump them.
Also dump dex instructions before code.

Change-Id: I9f0c04182a4cda6844027eae22e8151f2827dc99
diff --git a/src/disassembler.h b/src/disassembler.h
index 9f99ca6..afff7f1 100644
--- a/src/disassembler.h
+++ b/src/disassembler.h
@@ -31,6 +31,9 @@
   static Disassembler* Create(InstructionSet instruction_set);
   virtual ~Disassembler() {}
 
+  // Dump a single instruction returning the length of that instruction.
+  virtual size_t Dump(std::ostream& os, const uint8_t* begin) = 0;
+  // Dump instructions within a range.
   virtual void Dump(std::ostream& os, const uint8_t* begin, const uint8_t* end) = 0;
 
  protected: