### 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)

int get_navigation_layers_count() const;
	void add_navigation_layer(int p_index = -1);
	void move_navigation_layer(int p_from_index, int p_to_pos);
	void remove_navigation_layer(int p_index);
	void set_navigation_layer_layers(int p_layer_index, uint32_t p_layers);
	uint32_t get_navigation_layer_layers(int p_layer_index) const;
	void set_navigation_layer_layer_value(int p_layer_index, int p_layer_number, bool p_value);
	bool get_navigation_layer_layer_value(int p_layer_index, int p_layer_number) const;
	
	int get_custom_data_layers_count() const;
	void add_custom_data_layer(int p_index = -1);
	void move_custom_data_layer(int p_from_index, int p_to_pos);
	void remove_custom_data_layer(int p_index);
	int get_custom_data_layer_by_name(String p_value) const;
	void set_custom_data_layer_name(int p_layer_id, String p_value);
	String get_custom_data_layer_name(int p_layer_id) const;
	void set_custom_data_layer_type(int p_layer_id, Variant::Type p_value);
	Variant::Type get_custom_data_layer_type(int p_layer_id) const;
	
	void set_source_level_tile_proxy(int p_source_from, int p_source_to);
	int get_source_level_tile_proxy(int p_source_from);
	bool has_source_level_tile_proxy(int p_source_from);
	void remove_source_level_tile_proxy(int p_source_from);
	void set_coords_level_tile_proxy(int p_source_from, Vector2i p_coords_from, int p_source_to, Vector2i p_coords_to);
	Array get_coords_level_tile_proxy(int p_source_from, Vector2i p_coords_from);
	bool has_coords_level_tile_proxy(int p_source_from, Vector2i p_coords_from);
	void remove_coords_level_tile_proxy(int p_source_from, Vector2i p_coords_from);
	void set_alternative_level_tile_proxy(int p_source_from, Vector2i p_coords_from, int p_alternative_from, int p_source_to, Vector2i p_coords_to, int p_alternative_to);
	Array get_alternative_level_tile_proxy(int p_source_from, Vector2i p_coords_from, int p_alternative_from);