first pass on a javascript and coffeescript mode. still crude