Fix some error-handling bugs in python frame filters
While writing a Python frame filter, I found a few bugs in the current
frame filter code.  In particular:
* One spot converts a Python long to a CORE_ADDR using PyLong_AsLong.
  However, this can fail on overflow.  I changed this to use
  get_addr_from_python.
* Another spot is doing the same but with PyLong_AsUnsignedLongLong; I
  changed this as well just for consistency.
* Converting line numbers can print "-1" if conversion from long
  fails.  This isn't fatal but just a bit ugly.
I've included a test case for the first issue.  The line number one
didn't seem important enough to bother with.
2016-11-08  Tom Tromey  <tom@tromey.com>
	* python/py-framefilter.c (py_print_frame): Use
	get_addr_from_python.  Check for errors when getting line number.
2016-11-08  Tom Tromey  <tom@tromey.com>
	* gdb.python/py-framefilter.py (ElidingFrameDecorator.address):
	New method.