added more comments. ...and broken tests...