added main file and basic classes