### Godot version

3.5 (991bb6ac7) -> 4.0.beta10 (d0398f62f)

### System information

Windows 11

### Issue description

I have some relatively simple tilesets created in version 3.5 containing textures, collision shapes, and occlusion polygons. These tilesets are almost completely unusable when migrated into Godot 4 without recreating most of the tileset by hand. Specifically:

- Tile size seems to always be set at 16x16 (this might be the root cause of some of the other issues). This might not be easy to convert properly since tile size is a property of the TileMap in Godot 3, but of the TileSet in Godot 4. That being said, the converter could likely guess at the proper tile size based on the tiles present in the map (e.g. given that all my tiles are 32x32, it would be logical to set tile size as 32x32).
- No occlusion layer is created, meaning **all occlusion polygons are lost**.
- Collision polygons are incorrectly offset from the textures: ![image](https://user-images.githubusercontent.com/4420888/210156434-90331901-5e1c-4f16-9839-19a21bbcc5d9.png) (this wouldn't be as big of a deal if there was a way to "drag" entire collision polygons rather than just individual vertices, but it seems like to only way to fix them is to recreate them from scratch).
- Collision polygons aren't rotated properly in auto-generated rotation alt tiles:
![image](https://user-images.githubusercontent.com/4420888/210156473-069cc7c4-3466-4aba-83ff-693dbba31737.png)
- (I imagine these same issues are present for tileset navigation layers, but I haven't tested that)

Probably related to issues #64006 and #67218.

### Steps to reproduce

- Create a basic tileset with occlusion + collision polygons in Godot 3.
- Convert the project to a Godot 4 project.
- Open the project in 4 and pay attention to the Tileset's textures & collision/occlusion polygons.


### Minimal reproduction project

[convert4.zip](https://github.com/godotengine/godot/files/10328029/convert4.zip)

virtual void remove_navigation_layer(int p_index) override;
	virtual void add_custom_data_layer(int p_index) override;
	virtual void move_custom_data_layer(int p_from_index, int p_to_pos) override;
	virtual void remove_custom_data_layer(int p_index) override;
	virtual void reset_state() override;
	
	void set_texture(Ref<Texture2D> p_texture);
	Ref<Texture2D> get_texture() const;
	void set_margins(Vector2i p_margins);
	Vector2i get_margins() const;
	void set_separation(Vector2i p_separation);
	Vector2i get_separation() const;
	void set_texture_region_size(Vector2i p_tile_size);
	Vector2i get_texture_region_size() const;
	
	void set_use_texture_padding(bool p_use_padding);
	bool get_use_texture_padding() const;
	
	void create_tile(const Vector2i p_atlas_coords, const Vector2i p_size = Vector2i(1, 1));
	void remove_tile(Vector2i p_atlas_coords);
	virtual bool has_tile(Vector2i p_atlas_coords) const override;
	void move_tile_in_atlas(Vector2i p_atlas_coords, Vector2i p_new_atlas_coords = INVALID_ATLAS_COORDS, Vector2i p_new_size = Vector2i(-1, -1));
	Vector2i get_tile_size_in_atlas(Vector2i p_atlas_coords) const;
	virtual int get_tiles_count() const override;
	virtual Vector2i get_tile_id(int p_index) const override;
	bool has_room_for_tile(Vector2i p_atlas_coords, Vector2i p_size, int p_animation_columns, Vector2i p_animation_separation, int p_frames_count, Vector2i p_ignored_tile = INVALID_ATLAS_COORDS) const;
	PackedVector2Array get_tiles_to_be_removed_on_change(Ref<Texture2D> p_texture, Vector2i p_margins, Vector2i p_separation, Vector2i p_texture_region_size);
	Vector2i get_tile_at_coords(Vector2i p_atlas_coords) const;
	
	void set_tile_animation_columns(const Vector2i p_atlas_coords, int p_frame_columns);