optimized setup; refactoring; hints for autowiring