Add new api for loading toolkits
Don't reload a toolkit if it has already been loaded
Add 'unknown' value to ToolkitType
Remove Context.Font property

Text font is set in TextLayout.
Added Reset method to Context. It will be used to initialize
a context to a known initial state.
Track api changes and reorganize context backend implementation

Get rid of the cairo-based TextLayout backend. We use pango.
Added api for getting the system fonts

When using the GTK backend on windows or mac, 
the native backend will also be loaded.
Also removed obsolete text layout constructor.
Font fixes

Fixed methods that return the system default fonts.
Added font tests.
[Mac] Fix font creation