Fix ComprehensionBlock and prevent that from happening in the future.

Summary: https://code.google.com/p/esprima/issues/detail?id=505
Added a unit test the ensures that all nodes with 'type' have loc/range
(when it's enabled).

Test Plan: npm test