Remove the 'mutating' AssetIdent helpers
This adds a little boilerplate to construction, but there is no reason to really have more than one turbotask to construct an AssetIdent, we don't need to cache intermediate values
* `AssetIdent::from_path` was 27330 cache misses (2380 hits)
* `AssetIdent::with_modifier` was 16028 cache misses (34486 hits)
* `AssetIdent::with_part` was 5075 cache misses (2 cache hits)
* `AssetIdent::with_layer` was 4612 cache misses (0 cache hits)
* `AssetIdent::rename_as` was 2031 cache misses (7777 cache hits)
* `AssetIdent::with_query` was 387 cache misses (0 cache hits)
* `AssetIdent::with_content_type` was 45 cache misses (0 cache hits)
So some of these had non trivial cache hits, all of those will now simply flow to `AssetIdent::new`