Vastly improved dataset model now with self.before(request)