First draft of the classes