assert that __init__ has been called at point of entry

to make sure that instances of Pattern or Match aren't used before their __init__ (tp_init)
methods are called, check instances at the top of every method

without this (admitedly unlikely) code like
  pcre.Pattern.__new__(pcre.Pattern).match('')
would segfault

check for OverflowError from PyInt_AsSsize_t() in get_index()