Rename Refactoring to assist search and replace

Ready.

When the cursor is placed on a variable or a function, changing the name will also rename all other identical references, which are highlighted.

For scope analysis and reference lookup, two libraries escope and esrefactor are being used.