First refactoring
Added configuration
Implemented multiple targets.