Option: bring your own compiler

Hi,

I'm building an uber-task that will use grunt-contrib-coffee to compile with a non-standard version of coffee-script.  I imagine others may have the need to hand-pick their versions from the official repo or to use a fork as I do.  So this change allows the builder to provide their own instance of the compiler.

---------------------------------------

Add option to provide the coffee-script compiler that grunt-contrib-coffee will use to compile.

Usage example:
```
coffee: {
  build: {
    options: {
      compiler: require('coffee-script')
    },
    expand: true,
    cwd: 'src',
    dest: 'build',
    src: ['**/*.coffee'],
    ext: '.js'
  }
}