Fail if an input has a placeholder but no label.

A `placeholder` attribute is not a substitute for a proper label

[Closes #81]
nit: does not count as a label