refactor interface NameExtractor, improve DefaultNameExtractor #55