Fix various debugger method invocation bugs.

(Also fix DexFile to admit that string lengths are always non-negative.)

Change-Id: I2d01ef2411b5c7e594527790daf3e0aaa3a1b67f
diff --git a/src/object_utils.h b/src/object_utils.h
index 498b0ba..0e0d7de 100644
--- a/src/object_utils.h
+++ b/src/object_utils.h
@@ -416,7 +416,7 @@
     }
     return result;
   }
-  int32_t GetShortyLength() {
+  uint32_t GetShortyLength() {
     if (shorty_ == NULL) {
       GetShorty();
     }
@@ -587,7 +587,7 @@
   const DexFile* dex_file_;
   const Method* method_;
   const char* shorty_;
-  int32_t shorty_len_;
+  uint32_t shorty_len_;
 
   DISALLOW_COPY_AND_ASSIGN(MethodHelper);
 };