Added full components' settings support and code refactoring