EZP-23784: Refactored preview location handling

> [EZP-23784](https://jira.ez.no/browse/EZP-23784)

Improves the Location draft passed on to the preview template when previewing the first version of a Content. This draft does not have an id (it is set to null), but has the real parent location id and depth.

### Internal changes
Moved the location part out of `eZ\Publish\Core\Helpers\ContentPreviewHelper` to `eZ\Publish\Core\Helper\PreviewLocationProvider`. Using the API + SPI, the provider will either return the content's main location (API), or a fake location based on the content's parent location (SPI, uses eznodeassignment inside persistence).


Yeah... not a big fan, but it's a safer tradeoff.