Add Ruby script linter

Add a linter that extracts code from a HAML document using the
`ScriptExtractor` and runs it against `rubocop`, a well-developed Ruby
linter.

This provides really powerful linting for `haml-lint` right out of the
box, as most of the common lints (e.g. variable assigned but not used,
single instead of double quotes, etc.) are handled by Rubocop.

The only trick is converting the lint lines reported by Rubocop back to
the lines of the original HAML document. This is achieved by using the
source map of the `ScriptExtractor`, as it keeps track of which lines of
the original HAML document the extracted code came from.

This currently uses some crude regex checks to ignore some unhelpful
lints. This will at some point be replaced by directly integrating with
Rubocop rather than using the CLI.

Change-Id: I1e8f75e1f9036d2ee4ab504a28ee27f7dd00c117
Reviewed-on: https://gerrit.causes.com/28449
Tested-by: Shane da Silva <shane@causes.com>
Reviewed-by: Greg Hurrell <greg@causes.com>