The providers show renders the review list through a partial. The partial checks for a review id so that the build method in the controller does not make an empty review.
added logic to display the review if the id is present - aka the review has been saved - this presence identifier gets rid of the empty review generated by the build method (which was fixed with a hack)
New validation prevents an empty comment text field
Refactored and cleaned up by adding a review errors partial
moved the yield below the navigation for a better user experience