This is a first pass at the template updates for the PlatformInterface abstraction. This doesn't hit some of the requests of the ticket including showing an FFI implementation or any documentation updates on PlatformInterface.

But, I would love some guidance on whether that should be part of this PR or part of a different one, and what we might want to update.

Also, I did not add any tests for this, but all current tests pass. I'll double-check to see if any tests need to change or if I need to add one. Otherwise, I'll ask for a test exemption. Would love guidance on that as well.