introspection based active_record_columns impl for oo classes