better organization for the classes