Soft refactoring

Немного упорядочил, для упрощения сборки. Зарефакторил слгка код для визибилити.