Remove redundand filename field in Script

The filename can be found from node program field
Correctly track frame files

This makes error traces actually useful, since now the location
and the stack frames are correctly printed.
Fix sorting when the comparator returns < 0 but != -1

According to mozilla JS docs, the comparator might return any negative
value to signal that a is less than b:

"If compareFunction(a, b) is less than 0, sort a to a lower index than
b, i.e. a comes first."