Teaching through Collaborative Research Projects