Devoncarew dart2js errors

Display dart2js compilation errors that happen as a result of a background compilation. We do this in two places:

- when we are asked to compile foo.dart.js, and there's a compiler failure, we serve back JavaScript source to inserts the dart2js error message into the dom tree as an error dialog
- we display a model dialog in Spark with the dart2js error message

The CL also includes some refactoring so that we can associate line numbers with the error messages.

@umop