Clean up and Reorganize

Let's clean up some of the cruft from Akavache 2.x. Specifically:

* Fix the internal registration mechanism to be like ReactiveUI 5.x, which means it's testable and not nearly as dependent on global variables.
* Move a lot of the code that used to be in Akavache_PLATFORM.dll and move it to the Interfaces DLL (which will soon become the Core DLL).
* Remove a lot of hoop-jumping that we had to do in Akavache 2.x around the PLib stuff because RxUI 4.x wasn't PLibby.

## TODO:
- [ ] Fix all of the removed / broken stuff
- [ ] Write proper registrations for all of the libraries
- [ ] Write some tests around initialization to make sure things we expect are there get loaded.
- [ ] Rename Akavache.Interfaces to something more apropos