Rakefile: remove unnecessary semicolon
add gem dependency: rake
Rake: extract compilation task to a Ruby class
Rake: extract JSHint tasks to a Ruby class
Rake: JSHint tasks take a marker file to avoid doing extra work
JSHint task takes strings, not pathnames
CompilationTask adds its output to CLEAN