Migrate whole project to coffee script

Examples ok,
Unit tests ok.

Putting whole project under coffee script will provide a more human friendly syntax, but also generate clean javascript code when browser's js interpreter can sometime be very strict.