Build with rustpkg
Remove old build system
Update for Core Foundation bindings revamp
Make Mac surfaces serializable.

This is needed for sandboxing.
Separate out metadata from its descriptor, the latter of which is sendable
Make Linux surfaces serializable.

This is necessary for multiprocess.
fixes #34

  Added background color attributes to scene
Fix unsafe use of CString::with_ref

Sometimes the C string would get freed before XOpenDisplay was done with it,
producing a garbage display string and a null Display*.

Also switch to with_c_str because it will stack-allocate for the common case of
small strings (doesn't really matter here, but why not).
Check for XOpenDisplay() failure
update
workaround for shader compile problem in case of GLES not GL