Remove all gstate from _cairo_surface_tag
This is intended to address issue #495 (closed). It removes all the gstate from the _cairo_surface_tag operation and ensures the recording surface does not ignore tag operations. I am not sure why I originally included the gstate in _cairo_surface_tag. I am guessing I thought some backends might use it but I can't see how it could be used. It may have also been a lazy copy and paste of the other surface operations.
I also added a test to pdf-tagged-text to test links using the "rect" attribute and no drawing operations between the tag_begin/tag_end.