Added IA concept. General refactoring.