Empirical Software Linguistics: An Investigation of Code Reviews, Recommendations and Faults