Brought up to date wrt Dart core lib changes. Runs!