protect $data, raise errors in magic get instead of returning null, add init() method for initializing
set pseudo properties on responder, not data elements
set view names in abstract responder, not in browse responder