added devise and some customization