Adds bokchoy tests for outline and fixes staff outline bug

@cahrens @andy-armstrong please review.
I think you can do this slightly shortable (though perhaps less readable) lambda syntax:

return self.q(css=child_class.BODY_SELECTOR)).map(
            lambda el: child_class(self.browser, child_element.get_attribute('data-locator'))).results