Remove slug-related #ifdefs from src/core

This also enforces IWYU on some of the affected types
SkPicture etc.

I made SkPicturePlayback a friend of SkCanvas so the former
could call SkCanvas::draw(Slug) directly without needing to
have the implementation be linked in in a CPU build.

I added a null-returning implementation for deserialization
because there is still a connection between SlugImpl -> SubRunContainer
-> Ganesh code that means we cannot quite move slugs into
a CPU only build

Canary-Chromium-CL: 4649851
Bug: skia:14317
Change-Id: I98f776596288e2f6f3266549f5c9c8d12e9ba551
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/715416
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Herb Derby <herb@google.com>
55 files changed