bpo-27129: Use instruction offsets, not byte offsets, in bytecode and internally. (GH-25069)

* Use instruction offset, rather than bytecode offset. Streamlines interpreter dispatch a bit, and removes most EXTENDED_ARGs for jumps.

* Change some uses of PyCode_Addr2Line to PyFrame_GetLineNumber
diff --git a/Objects/codeobject.c b/Objects/codeobject.c
index 69cb31c..9bb49f1 100644
--- a/Objects/codeobject.c
+++ b/Objects/codeobject.c
@@ -1246,7 +1246,7 @@ PyTypeObject PyCode_Type = {
 int
 PyCode_Addr2Line(PyCodeObject *co, int addrq)
 {
-    if (addrq == -1) {
+    if (addrq < 0) {
         return co->co_firstlineno;
     }
     assert(addrq >= 0 && addrq < PyBytes_GET_SIZE(co->co_code));