Use multiline strings in test code
Add "rename in superclass" and "replace in strings" option to rename

Rope supports renaming methods and members in the complete hierarchy.

For example, in the following

  class A(object):
    def foo(self): pass

  class A2(A):
    def foo(self): pass

We want to be able to rename A2's foo as well as A's foo at the same
time.

Rope supports this as "in_hierarchy" so add it to the rename dialog.

Also, rope allows to change occurences in strings and docstrings, let
the user choose whether he wants that as well.
Fix some PEP8 warnings in the refactoring change.
Add and use assertSourceEqual in refactor test cases.
Use print function, not statement, for Python 3 compatibility.