harrumpher

Noun

 * 1)  One who complains or moralizes.