More reviews from Peter, before the biggest change
Changed application(), column() and so on to child(). Tests are passing, but haven't done UI tests.