added in pledge controller and model as well as did unit testing