Moved cairo specific functions to the cairo backend. Cleaned up exports of cairo backend. Moved general drawing functions from the backend to Drawing. Cairo backend is the only module that imports cairo.
Moved the tests main function to a central module. This also decouples the tests from the cairo backend.