added reservation model and test