treat empty github token like missing github token
Deal with the case where unrecognized string is given in `language`

You can find strange values in users' config files.
Fall back to the default language if `language` is not recognzied
Do not modify the object in place

It may be used elsewhere we don't know of
Merge pull request #310 from travis-ci/ha-bug-unrecognized_language

Deal with the case where unrecognized string is given in `language`
Merge pull request #305 from travis-ci/rkh-empty-github-token

treat empty github token like missing github token
Fixed Build states for fast finishing
Added spec for new state conditions