set_cube_path on client.__init__; respect exclude_fields (basesql) in list_cube_fields; list_cube_fields supports passing exclude_fields list; refactored basesql._extract