add foreign keys constraints (with gem foreigner) + adapted form and data listings for each model + add validations constraints in models