added mongo and service layer