Starting work on Linguist overrides

This is pretty rough but `Linguist::Overrides` reads a `.linguist` file (composed of regular expressions and commands) and uses this to both ignore files but also override the language identification.

One major thing to be addressed is that currently Linguist picks up _it's own_ `.linguist` file rather than one for a target test repo/directory.

Some :eyes: on this, especially from @bkeepers would be :sparkles: