add `opts.compiler` allows third party to override the internal compiler

I read the comments that @lazd made in other posts. Here is my version of rolling out the User custom compiler. 
Looks like `Basic_htmlbars.js` does indeed contain two lines, so if you remove the trailing newline from the file, `fileMatchesExpected` should work.
![screen shot 2014-12-16 at 9 45 38 am](https://cloud.githubusercontent.com/assets/201344/5448544/6410f356-8508-11e4-9ee3-272c0ab352b3.png)