Refactor method search classes for better reusability

This refactoring allows to change some aspects of method search behavior in subclasses, namely:
- provide specific text processor implementation
- replace default signature comparison tied to Java PSI