After a bad experience, give js2 a go again

Also, take Magnar's trick with function -> f in js2 mode