fix keywords field

Ensure that keywords is always an array of strings
Check for typos in fixer

This removes the need for a 'isValid' check prior to running
the fixer, which can lead to some duplicate warnings.
Introduce strict mode

Invalid semver 2.0 versions throw, so the strict mode flag will tell it
whether or not to be loose in what SemVer accepts.

Also, set the default warn function in fixer to a no-op function.
Merge pull request #27 from isaacs/master

Updates to use SemVer 2.0 with strict/loose mode