Very rough Design and first attempt of classes