Make Eto.Test code PCL-safe buy #if'ing out non-PCL sections. This turned out to be relatively simple.
Direct2D: Tried compiling the direct2d platform as a winrt class library, and fixed the resulting compiler issues by adding #if WINFORMS guards around portions that are winforms specific.
Make missing type ComVisible internal.
Remove code in Eto.IO, except for SystemIcons, which needs to be moved to the appropriate platforms.
Make Eto.Test.Pcl itself a Portable Class Library; previously it was a regular library that referenced Eto.Pcl.dll; now it too can be used as-is on any platform. The Xaml and Json tests are omitted in this project. To add the Json tests back, Eto.Json.Pcl will also need to be converted to a Pcl.
Direct2D fixes. Flatten layout tests to two levels.
Direct2D: flush stream before saving image.
Convert Eto.Android.sln to be PCL based, delete Android-specific versions of Eto.csproj, Eto.Json.csproj and Eto.Test.csproj. Fix Key => Keys.
Nuget boilerplate.