Code Review

This code looks fantastic -- clean and easy to read.

I'd love to see you use inheritance for the block types (and give all blocks the rotate method and generateTiles).  This would also help in creating some Jasmine tests (which for these basic elements should be pretty straightforward).

I think the drawPreview method might make more sense as part of a Drawing or GameView object.

It also might be good to namespace all your global objects and methods. Something like:
```javascript
//at the top of each JS file
var TBS = TBS || {};
```