added will paginate gem and functionality