penalize irrelevant language matches

Also, as per previous code review feedback, making arguments to scorer functions
case classes.

Auditors: blackmad